diff --git a/Changelog.yaml b/Changelog.yaml index 2e12b8bfbc..8efb7317d7 100644 --- a/Changelog.yaml +++ b/Changelog.yaml @@ -4,6 +4,255 @@ # for important features/bug fixes. # Also, each release can have new and improved recipes. +- version: 0.7.8 + date: 2010-07-09 + + new features: + - title: "New tool to help prepare EPUBs for publication" + type: major + description: > + "calibre now contains a new command line tool called epub-fix that can automatically fix + common problems in EPUB files that cause them to be rejected by poorly designed publishing services. + The tool is plugin based for extensible functionality in the future. Currently, it can fix unmanifested files + and workaround the date and svg preserveaspectratio bugs of epubcheck." + + - title: "New icons for the toolbar buttons by Kamil Tatara" + + - title: "Display rating (when available) in cover browser" + + - title: "Clicking on the central cover int the cover browser now opens that book in the viewer" + + - title: "Use the status bar instead of the area to the right of the location view to display status information" + + - title: "Driver for the Pandigital Novel e-book reader" + + bug fixes: + - title: "News download: Don not specify a font family for article descriptions" + + - title: "News download: Fix regression introduced in 0.7.0 that broke download of some embedded content feeds" + + - title: "MOBI Output: Partial support for nested superscript and subscripts." + tickets: [6132] + + - title: "CHM Input: Fix handling of buggy CHM files with no .hhc" + tickets: [6087] + + - title: "EPUB Input: Fix bug in unzipping EPUB files that have been zipped in depth first order." + tickets: [6127] + + - title: "TXT Input: Convert HTML entities to characters." + tickets: [6114] + + - title: "LRF Input: Handle LRF files with random null bytes in the text" + tickets: [6097] + + - title: "Kobo driver: Fix detection of txt/html files on the device" + + - title: "Fix opening of books when calibre library is on an unmapped network share in windows" + + - title: "SONY driver: Only update the timestamp in the XML db for newly added books" + + - title: "Cover browser: Fix rendering of center cover when width of cover browser is less than the width of a single cover" + + - title: "Cover browser: Correct fix for setPixel out of bounds warning causing UI slowdown in calibre" + + new recipes: + - title: "evz.ro" + author: Darko Miletic + + - title: "Anchorage Daily News, China Economic Net, BBC Chinese and Singtao Daily" + author: rty + + - title: Big Oven + author: Starson17 + + improved recipes: + - Haaretz + - Editor and Publisher + - Estadao + + +- version: 0.7.7 + date: 2010-07-02 + + new features: + - title: "Support for the Nokia E52" + + - title: "Searching on the size column" + + - title: "iTunes driver: Add option to disable cover fetching for speeding up the fetching of large book collections" + + bug fixes: + - title: "SONY driver: Only update metadata when books are sent to device." + + - title: "TXT Input: Ensure the generated html is splittable" + tickets: [5904] + + - title: "Fix infinite loop in default cover generation." + tickets: [6061] + + - title: "HTML Input: Fix a parsing bug that was triggered in rare conditions" + tickets: [6064] + + - title: "HTML2Zip plugin: Do not replace ligatures" + tickets: [6019] + + - title: "iTunes driver: Fix transmission of non integral series numbers" + tickets: [6046] + + - title: "Simplify implementation of cover caching and ensure cover browser is updated when covers are changed" + + - title: "PDF metadata: Fix last character corrupted when setting metadata in encrypted files." + + - title: "PDF metadata: Update the version of PoDoFo used to set metadata to 0.8.1. Hopefully that means more PDF files will work" + + - title: "Device drivers: Speedup for dumping metadata cache to devices on Windows XP" + + - title: "EPUB Output: Ensure that language setting is conformant to the specs" + + - title: "MOBI Output: Fix a memory leak and a crash in the palmdoc compression routine" + + - title: "Metadata download: Fix a regression that resulted in a failed download for some books" + + new recipes: + - title: "Foreign Policy and Alo!" + author: Darko Miletic + + - title: Statesman and ifzm + author: rty + + improved recipes: + - Akter + - The Old New Thing + + + +- version: 0.7.6 + date: 2010-06-28 + + new features: + - title: "Add support for the new firmware of the Azbooka" + tickets: [5994] + + - title: "A few speedups for calibre startup, should add up to a few seconds of startup time on slower machines" + + - title: "Support for the Sweem MM300" + + - title: "Add keyboard shorcut for Download metadata and covers" + + bug fixes: + - title: "Fix regression in 0.7.5 that broke conversion of malformed HTML files (like those Microsoft Word outputs)" + type: major + tickets: [5991] + + - title: "Don't download tags from librarything, as the tagging there is not very good" + + - title: "Add mimetype for FB2 so that it can be served by the content server" + tickets: [6011] + + - title: "Ensure cover is not resized to less than the available space in the Edit Meta Information dialog" + tickets: [6001] + + - title: "SONY driver: Only update collections when sending book to device for the first time" + + - title: "calibre should now work on windows when the location for the library contains non-ascii characters" + tickets: [5983] + + - title: "Cover browser once again distorts instead of cropping covers that have an incorrect aspect ratio" + + - title: "ISBNDb metadata plugin: Fix bug causing only first page of results to be fetched" + + - title: "Move iTunes driver to the bottom so that it doesn't interfere with device detection for people that have iphones and an ereader plugged in" + + improved recipes: + - Houston Chronicle + - Hindu + - Times of India + - New York Times + + new recipes: + - title: Winnipeg Sun + author: rty + +- version: 0.7.5 + date: 2010-06-25 + + new features: + - title: "New driver for the Kobo featuring closer integration with the device." + + - title: "Support for the Dell Streak, Eken Android tablet and the Astak Mentor EB600" + + - title: "New series type custom column" + + - title: "Add option in Send to device menu to connect to iTunes without any iDevice (experimental)" + + - title: "iPad driver: Make setting iTunes Category from series optional. News download now optimizations for iPad output." + + - title: "Add option to disable book cover animation" + tickets: [5909] + + - title: "Edit meta information dialog: Remember last used size and splitter position." + tickets: [5908] + + - title: "Metadata download: If any results have a published date, ensure they all do" + + - title: "SONY driver: Add a preference setting in Preferences->Add/Save->Send to device to control how colelctions are managed on the device by calibre" + + - title: "Metadata download: Filter out non book results. Also sort results by availability of covers for the isbn" + tickets: [5946] + + - title: "Bulk editing for device collections in the device view via the context menu" + + bug fixes: + - title: "When converting books using the calibre GUI, set the language of the output book to be the same as the language of the User Interface, instead of undefined. Fixes use of dictionary in iBooks" + + - title: "PDF Output: Fix setting top/bottom margnis has no effect" + + - title: "Conversion pipeline: Fix typo causing remove footer regex to always fail" + + - title: "Handle device being yanked with queued device jobs gracefully" + + - title: "Conversion pipeline: Handle deeply nested XML structures" + tickets: [5931] + + - title: "Conversion pipeline: Fix handling of lists with a specified left margin" + tickets: [5877] + + - title: "Restore workaround for ADE buggy rendering of anchors as links. However, make it overridable by extra CSS" + + - title: "Fix LibraryThing metadata download plugin" + + - title: "Fix multiple ratings displayed in Tag Browser for some legacy databases" + + - title: "Fix invocation of postprocess file type plugins plugins" + + - title: "HTML Input: Handle @import directives in linked css files." + tickets: [5135] + + - title: "HTML Input: Handle absolute paths in resource links on windows correctly." + tickets: [3031] + + - title: "E-book viewer: Handle font-face rules specify multiple families to be substituted" + + - title: "Cover browser: Set aspect ratio of covers to 3:4 instead of 2:3. Crop rather than distort covers whoose aspect ratio is different from this. Antialias the rendering of the central cover" + + - title: "Reset Tag browser if the text in the search box is edited" + + - title: "Fix detection of SD card in Samsung Galaxy windows driver" + + new recipes: + - title: "L'Osservatore Romano" + author: Darko Miletic + + - title: China Press, London Free Press, People Daily + author: rty + + improved recipes: + - Zaobao + - New Scientist + - National Post + - London review of books + - version: 0.7.4 date: 2010-06-19 diff --git a/resources/images/add_book.svg b/resources/images/add_book.svg index b0633d48d3..54a9f05b68 100644 --- a/resources/images/add_book.svg +++ b/resources/images/add_book.svg @@ -1,2404 +1,111 @@ - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + version="1.1" + id="Layer_1" + x="0px" + y="0px" + width="149.5" + height="201" + viewBox="0 0 149.49999 201" + enable-background="new 0 0 595.28 841.89" + xml:space="preserve" + inkscape:version="0.47 r22583" + sodipodi:docname="add_book.svg">image/svg+xml + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/config.svg b/resources/images/config.svg index d631d36aa4..28660a4eea 100644 --- a/resources/images/config.svg +++ b/resources/images/config.svg @@ -1,1523 +1,208 @@ - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + version="1.1" + id="Layer_1" + x="0px" + y="0px" + width="149.86" + height="195.22701" + viewBox="0 0 149.85999 195.227" + enable-background="new 0 0 595.28 841.89" + xml:space="preserve" + inkscape:version="0.47 r22583" + sodipodi:docname="config.svg">image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/convert.svg b/resources/images/convert.svg index cd18d49cf9..f318fc9c75 100644 --- a/resources/images/convert.svg +++ b/resources/images/convert.svg @@ -1,834 +1,142 @@ - + + image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + inkscape:zoom="0.28032165" + inkscape:cx="75.583001" + inkscape:cy="99.722002" + inkscape:window-x="0" + inkscape:window-y="41" + inkscape:window-maximized="0" + inkscape:current-layer="Isolation_Mode" /> + + - - - - - - - - - - - - - - - - - -image/svg+xml - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + - + - + - - - + + + - + - + - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + style="stop-color:#000000" + id="stop36" /> + + + + + \ No newline at end of file diff --git a/resources/images/default_cover.svg b/resources/images/default_cover.svg new file mode 100644 index 0000000000..3faf04f61d --- /dev/null +++ b/resources/images/default_cover.svg @@ -0,0 +1,3191 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/images/devices/ipad.png b/resources/images/devices/ipad.png index 119d53dc9a..823109194f 100644 Binary files a/resources/images/devices/ipad.png and b/resources/images/devices/ipad.png differ diff --git a/resources/images/devices/itunes.png b/resources/images/devices/itunes.png new file mode 100644 index 0000000000..cd8579d492 Binary files /dev/null and b/resources/images/devices/itunes.png differ diff --git a/resources/images/dialog_information.svg b/resources/images/dialog_information.svg index 995f74cd78..1c3d34add1 100644 --- a/resources/images/dialog_information.svg +++ b/resources/images/dialog_information.svg @@ -1752,7 +1752,7 @@ sodipodi:cy="93.331604" sodipodi:cx="-166.53223" id="path6082" - style="opacity:1;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.08779998;stroke-opacity:1;filter:url(#filter6074)" + style="opacity:1;fill:url(#radialGradient6084);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.08779998;stroke-opacity:1;filter:url(#filter6074)" sodipodi:type="arc" /> - - + +image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/edit_copy.svg b/resources/images/edit_copy.svg new file mode 100644 index 0000000000..86e1adbc3f --- /dev/null +++ b/resources/images/edit_copy.svg @@ -0,0 +1,4298 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/edit_input.svg b/resources/images/edit_input.svg index a2d8bc96e2..54200503e2 100644 --- a/resources/images/edit_input.svg +++ b/resources/images/edit_input.svg @@ -1,1071 +1,77 @@ - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - Oxygen team - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + version="1.1" + id="Layer_1" + x="0px" + y="0px" + width="249.46899" + height="257.47101" + viewBox="0 0 249.469 257.471" + enable-background="new 0 0 595.279 841.89" + xml:space="preserve" + inkscape:version="0.47 r22583" + sodipodi:docname="edit_input.svg">image/svg+xml + + + + + + + \ No newline at end of file diff --git a/resources/images/help.svg b/resources/images/help.svg new file mode 100644 index 0000000000..8d02701898 --- /dev/null +++ b/resources/images/help.svg @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/news.svg b/resources/images/news.svg index 38016738f5..e4a1b1832a 100644 --- a/resources/images/news.svg +++ b/resources/images/news.svg @@ -1,2826 +1,94 @@ - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - Oxygen team - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + version="1.1" + id="Layer_1" + x="0px" + y="0px" + width="134.77701" + height="199.99901" + viewBox="0 0 134.777 199.999" + enable-background="new 0 0 595.28 841.89" + xml:space="preserve" + inkscape:version="0.47 r22583" + sodipodi:docname="news.svg">image/svg+xml + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/news/alo_novine.png b/resources/images/news/alo_novine.png new file mode 100644 index 0000000000..569ea16fce Binary files /dev/null and b/resources/images/news/alo_novine.png differ diff --git a/resources/images/news/elpais_impreso.png b/resources/images/news/elpais_impreso.png new file mode 100644 index 0000000000..35dcaf2d44 Binary files /dev/null and b/resources/images/news/elpais_impreso.png differ diff --git a/resources/images/news/evz.ro.png b/resources/images/news/evz.ro.png new file mode 100644 index 0000000000..c0549185bc Binary files /dev/null and b/resources/images/news/evz.ro.png differ diff --git a/resources/images/news/haaretz.png b/resources/images/news/haaretz.png new file mode 100644 index 0000000000..e6cb02c3b6 Binary files /dev/null and b/resources/images/news/haaretz.png differ diff --git a/resources/images/news/lrb.png b/resources/images/news/lrb.png new file mode 100644 index 0000000000..da966d6a1a Binary files /dev/null and b/resources/images/news/lrb.png differ diff --git a/resources/images/news/lrb_payed.png b/resources/images/news/lrb_payed.png new file mode 100644 index 0000000000..da966d6a1a Binary files /dev/null and b/resources/images/news/lrb_payed.png differ diff --git a/resources/images/save.svg b/resources/images/save.svg index af62235cfc..14a431e60a 100644 --- a/resources/images/save.svg +++ b/resources/images/save.svg @@ -1,1961 +1,124 @@ - + + image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + inkscape:window-y="41" + inkscape:window-maximized="0" + inkscape:current-layer="Layer_1" /> + + - - - - - - - - - - - - - - - - - - - - - - - - - - + d="m 355.763,325.697 h -116.49 c -4.664,0 -8.445,3.782 -8.445,8.446 V 512.22 c 0,4.664 3.781,8.446 8.445,8.446 h 116.489 c 4.665,0 8.446,-3.782 8.446,-8.446 V 334.144 c 10e-4,-4.665 -3.78,-8.447 -8.445,-8.447 z m -106.283,19.004 59.827,-2.111 c 0,39.416 -58.068,57.364 -59.827,57.364 -1.759,0 0,-55.253 0,-55.253 z m -7.742,166.112 c -1.945,0 -3.521,-1.576 -3.521,-3.52 0,-1.944 1.575,-3.52 3.521,-3.52 1.942,0 3.519,1.575 3.519,3.52 0,1.944 -1.576,3.52 -3.519,3.52 z m 0,-84.112 c -1.945,0 -3.521,-1.575 -3.521,-3.519 0,-1.944 1.575,-3.52 3.521,-3.52 1.942,0 3.519,1.575 3.519,3.52 0,1.944 -1.576,3.519 -3.519,3.519 z m 0,-84.111 c -1.945,0 -3.521,-1.576 -3.521,-3.519 0,-1.944 1.575,-3.52 3.521,-3.52 1.942,0 3.519,1.576 3.519,3.52 0,1.943 -1.576,3.519 -3.519,3.519 z m 56.23,164.704 c -27.212,0 -49.271,-22.06 -49.271,-49.271 0,-26.822 21.438,-48.623 48.112,-49.241 24.819,-21.405 30.446,-63.729 30.446,-63.729 h 14.43 v 90.254 c 3.54,6.799 5.553,14.521 5.553,22.716 0,27.211 -22.058,49.271 -49.27,49.271 z m 55.332,3.519 c -1.944,0 -3.521,-1.576 -3.521,-3.52 0,-1.944 1.576,-3.52 3.521,-3.52 1.943,0 3.519,1.575 3.519,3.52 -0.001,1.944 -1.576,3.52 -3.519,3.52 z m 0,-84.112 c -1.944,0 -3.521,-1.575 -3.521,-3.519 0,-1.944 1.576,-3.52 3.521,-3.52 1.943,0 3.519,1.575 3.519,3.52 -0.001,1.944 -1.576,3.519 -3.519,3.519 z m 0,-84.111 c -1.944,0 -3.521,-1.576 -3.521,-3.519 0,-1.944 1.576,-3.52 3.521,-3.52 1.943,0 3.519,1.576 3.519,3.52 -0.001,1.943 -1.576,3.519 -3.519,3.519 z" + id="path7" + style="fill:#ffffff" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - + cx="297.96799" + cy="458.02301" + r="19.356001" + id="circle9" + sodipodi:cx="297.96799" + sodipodi:cy="458.02301" + sodipodi:rx="19.356001" + sodipodi:ry="19.356001" + style="fill:#ffffff" + d="m 317.32399,458.02301 c 0,10.69002 -8.66598,19.356 -19.356,19.356 -10.69003,0 -19.356,-8.66598 -19.356,-19.356 0,-10.69002 8.66597,-19.356 19.356,-19.356 10.69002,0 19.356,8.66598 19.356,19.356 z" /> + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/sync.svg b/resources/images/sync.svg index 93dc8ef5fb..5055d530ea 100644 --- a/resources/images/sync.svg +++ b/resources/images/sync.svg @@ -1,1515 +1,77 @@ - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + version="1.1" + id="Layer_1" + x="0px" + y="0px" + width="148.90399" + height="202.65399" + viewBox="0 0 148.90399 202.65399" + enable-background="new 0 0 595.279 841.89" + xml:space="preserve" + inkscape:version="0.47 r22583" + sodipodi:docname="sync.svg">image/svg+xml + + + + + + + \ No newline at end of file diff --git a/resources/images/trash.svg b/resources/images/trash.svg index 1ff9c4d874..15e10441fd 100644 --- a/resources/images/trash.svg +++ b/resources/images/trash.svg @@ -1,2442 +1,215 @@ - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + version="1.1" + id="Layer_1" + x="0px" + y="0px" + width="192.6368" + height="199.16716" + viewBox="0 0 192.63679 199.16716" + enable-background="new 0 0 595.28 841.89" + xml:space="preserve" + inkscape:version="0.47 r22583" + sodipodi:docname="trash.svg">image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/view.svg b/resources/images/view.svg index 7bdbb392dc..f0b0e1ef6c 100644 --- a/resources/images/view.svg +++ b/resources/images/view.svg @@ -1,2071 +1,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - Oxygen team - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/recipes/akter.recipe b/resources/recipes/akter.recipe index 3959fff717..0f2fb05640 100644 --- a/resources/recipes/akter.recipe +++ b/resources/recipes/akter.recipe @@ -15,7 +15,7 @@ class Akter(BasicNewsRecipe): category = 'vesti, online vesti, najnovije vesti, politika, sport, ekonomija, biznis, finansije, berza, kultura, zivot, putovanja, auto, automobili, tehnologija, politicki magazin, dogadjaji, desavanja, lifestyle, zdravlje, zdravstvo, vest, novine, nedeljnik, srbija, novi sad, vojvodina, svet, drustvo, zabava, republika srpska, beograd, intervju, komentar, reportaza, arhiva vesti, news, serbia, politics' oldest_article = 8 max_articles_per_feed = 100 - no_stylesheets = False + no_stylesheets = True use_embedded_content = False encoding = 'utf-8' masthead_url = 'http://www.akter.co.rs/templates/gk_thenews2/images/style2/logo.png' @@ -23,9 +23,9 @@ class Akter(BasicNewsRecipe): publication_type = 'magazine' remove_empty_feeds = True PREFIX = 'http://www.akter.co.rs' - extra_css = """ @font-face {font-family: "serif1";src:url(res:///opt/sony/ebook/FONT/tt0011m_.ttf)} + extra_css = """ @font-face {font-family: "sans1";src:url(res:///opt/sony/ebook/FONT/tt0003m_.ttf)} - .article_description,body,.lokacija{font-family: Arial,Helvetica,sans1,sans-serif} + .article_description,body{font-family: Arial,Helvetica,sans1,sans-serif} .color-2{display:block; margin-bottom: 10px; padding: 5px, 10px; border-left: 1px solid #D00000; color: #D00000} img{margin-bottom: 0.8em} """ diff --git a/resources/recipes/alo_novine.recipe b/resources/recipes/alo_novine.recipe new file mode 100644 index 0000000000..45e53e99e8 --- /dev/null +++ b/resources/recipes/alo_novine.recipe @@ -0,0 +1,65 @@ +__license__ = 'GPL v3' +__copyright__ = '2010, Darko Miletic ' + +''' +www.alo.rs +''' + +import re +from calibre.web.feeds.recipes import BasicNewsRecipe + +class Alo_Novine(BasicNewsRecipe): + title = 'Alo!' + __author__ = 'Darko Miletic' + description = "News Portal from Serbia" + publisher = 'Alo novine d.o.o.' + category = 'news, politics, Serbia' + oldest_article = 2 + max_articles_per_feed = 100 + delay = 4 + no_stylesheets = True + encoding = 'utf-8' + use_embedded_content = False + language = 'sr' + extra_css = """ + @font-face {font-family: "sans1";src:url(res:///opt/sony/ebook/FONT/tt0003m_.ttf)} + .article_description,body{font-family: Arial,Helvetica,sans1,sans-serif} + .lead {font-size: 1.3em} + h1{color: #DB0700} + .article_uvod{font-style: italic; font-size: 1.2em} + img{margin-bottom: 0.8em} """ + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher': publisher + , 'language' : language + } + + preprocess_regexps = [(re.compile(u'\u0110'), lambda match: u'\u00D0')] + + remove_tags = [dict(name=['object','link','embed'])] + remove_attributes = ['height','width'] + + feeds = [ + (u'Najnovije Vijesti', u'http://www.alo.rs/rss/danasnje_vesti') + ,(u'Politika' , u'http://www.alo.rs/rss/politika') + ,(u'Vesti' , u'http://www.alo.rs/rss/vesti') + ,(u'Sport' , u'http://www.alo.rs/rss/sport') + ,(u'Ljudi' , u'http://www.alo.rs/rss/ljudi') + ,(u'Saveti' , u'http://www.alo.rs/rss/saveti') + ] + + def preprocess_html(self, soup): + for item in soup.findAll(style=True): + del item['style'] + return soup + + def print_version(self, url): + artl = url.rpartition('/')[0] + artid = artl.rpartition('/')[2] + return 'http://www.alo.rs/resources/templates/tools/print.php?id=' + artid + + def image_url_processor(self, baseurl, url): + return url.replace('alo.rs//','alo.rs/') + diff --git a/resources/recipes/anchorage_daily.recipe b/resources/recipes/anchorage_daily.recipe new file mode 100644 index 0000000000..4ce2f13a14 --- /dev/null +++ b/resources/recipes/anchorage_daily.recipe @@ -0,0 +1,40 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1278347258(BasicNewsRecipe): + title = u'Anchorage Daily News' + __author__ = 'rty' + oldest_article = 7 + max_articles_per_feed = 100 + + feeds = [(u'Alaska News', u'http://www.adn.com/news/alaska/index.xml'), + (u'Business', u'http://www.adn.com/money/index.xml'), + (u'Sports', u'http://www.adn.com/sports/index.xml'), + (u'Politics', u'http://www.adn.com/politics/index.xml'), + (u'Lifestyles', u'http://www.adn.com/life/index.xml'), + (u'Iditarod', u'http://www.adn.com/iditarod/index.xml') + ] + description = ''''Alaska's Newspaper''' + publisher = 'http://www.adn.com' + category = 'news, Alaska, Anchorage' + language = 'en' + extra_css = ''' + p{font-weight: normal;text-align: justify} + ''' + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + language = 'en' + encoding = 'latin-1' + conversion_options = {'linearize_tables':True} + masthead_url = 'http://media.adn.com/includes/assets/images/adn_logo.2.gif' + + keep_only_tags = [ + dict(name='div', attrs={'class':'left_col story_mainbar'}), + ] + remove_tags = [ + dict(name='div', attrs={'class':'story_tools'}), + dict(name='p', attrs={'class':'ad_label'}), + ] + remove_tags_after = [ + dict(name='div', attrs={'class':'advertisement'}), + ] diff --git a/resources/recipes/ap.recipe b/resources/recipes/ap.recipe index 572c0aa392..0118cf0726 100644 --- a/resources/recipes/ap.recipe +++ b/resources/recipes/ap.recipe @@ -12,9 +12,9 @@ class AssociatedPress(BasicNewsRecipe): max_articles_per_feed = 15 html2lrf_options = ['--force-page-break-before-tag="chapter"'] - - - preprocess_regexps = [ (re.compile(i[0], re.IGNORECASE | re.DOTALL), i[1]) for i in + + + preprocess_regexps = [ (re.compile(i[0], re.IGNORECASE | re.DOTALL), i[1]) for i in [ (r'.*?' , lambda match : ''), (r'.*?', lambda match : ''), @@ -25,10 +25,10 @@ class AssociatedPress(BasicNewsRecipe): (r'

', lambda match : '

'), (r'Learn more about our Privacy Policy.*?', lambda match : ''), ] - ] - + ] + + - feeds = [ ('AP Headlines', 'http://hosted.ap.org/lineups/TOPHEADS-rss_2.0.xml?SITE=ORAST&SECTION=HOME'), ('AP US News', 'http://hosted.ap.org/lineups/USHEADS-rss_2.0.xml?SITE=CAVIC&SECTION=HOME'), ('AP World News', 'http://hosted.ap.org/lineups/WORLDHEADS-rss_2.0.xml?SITE=SCAND&SECTION=HOME'), @@ -38,4 +38,4 @@ class AssociatedPress(BasicNewsRecipe): ('AP Health News', 'http://hosted.ap.org/lineups/HEALTHHEADS-rss_2.0.xml?SITE=FLDAY&SECTION=HOME'), ('AP Science News', 'http://hosted.ap.org/lineups/SCIENCEHEADS-rss_2.0.xml?SITE=OHCIN&SECTION=HOME'), ('AP Strange News', 'http://hosted.ap.org/lineups/STRANGEHEADS-rss_2.0.xml?SITE=WCNC&SECTION=HOME'), - ] \ No newline at end of file + ] diff --git a/resources/recipes/bbc_chinese.recipe b/resources/recipes/bbc_chinese.recipe new file mode 100644 index 0000000000..e2bff81b90 --- /dev/null +++ b/resources/recipes/bbc_chinese.recipe @@ -0,0 +1,39 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1277443634(BasicNewsRecipe): + title = u'BBC Chinese' + oldest_article = 7 + max_articles_per_feed = 100 + + feeds = [ + (u'\u4e3b\u9875', u'http://www.bbc.co.uk/zhongwen/simp/index.xml'), + (u'\u56fd\u9645\u65b0\u95fb', u'http://www.bbc.co.uk/zhongwen/simp/world/index.xml'), + (u'\u4e24\u5cb8\u4e09\u5730', u'http://www.bbc.co.uk/zhongwen/simp/china/index.xml'), + (u'\u91d1\u878d\u8d22\u7ecf', u'http://www.bbc.co.uk/zhongwen/simp/business/index.xml'), + (u'\u7f51\u4e0a\u4e92\u52a8', u'http://www.bbc.co.uk/zhongwen/simp/interactive/index.xml'), + (u'\u97f3\u89c6\u56fe\u7247', u'http://www.bbc.co.uk/zhongwen/simp/multimedia/index.xml'), + (u'\u5206\u6790\u8bc4\u8bba', u'http://www.bbc.co.uk/zhongwen/simp/indepth/index.xml') + ] + extra_css = ''' + @font-face {font-family: "DroidFont", serif, sans-serif; src: url(res:///system/fonts/DroidSansFallback.ttf); }\n + body {margin-right: 8pt; font-family: 'DroidFont', serif;}\n + h1 {font-family: 'DroidFont', serif;}\n + .articledescription {font-family: 'DroidFont', serif;} + ''' + __author__ = 'rty' + __version__ = '1.0' + language = 'zh' + pubisher = 'British Broadcasting Corporation' + description = 'BBC news in Chinese' + category = 'News, Chinese' + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + encoding = 'UTF-8' + conversion_options = {'linearize_tables':True} + masthead_url = 'http://wscdn.bbc.co.uk/zhongwen/simp/images/1024/brand.jpg' + keep_only_tags = [ + dict(name='h1'), + dict(name='p', attrs={'class':['primary-topic','summary']}), + dict(name='div', attrs={'class':['bodytext','datestamp']}), + ] diff --git a/resources/recipes/big_oven.recipe b/resources/recipes/big_oven.recipe new file mode 100644 index 0000000000..e1636daf72 --- /dev/null +++ b/resources/recipes/big_oven.recipe @@ -0,0 +1,64 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class BigOven(BasicNewsRecipe): + title = 'BigOven' + __author__ = 'Starson17' + description = 'Recipes for the Foodie in us all. Registration is free. A fake username and password just gives smaller photos.' + language = 'en' + category = 'news, food, recipes, gourmet' + publisher = 'Starson17' + use_embedded_content= False + no_stylesheets = True + oldest_article = 24 + remove_javascript = True + remove_empty_feeds = True + cover_url = 'http://www.software.com/images/products/BigOven%20Logo_177_216.JPG' + max_articles_per_feed = 30 + needs_subscription = True + + conversion_options = {'linearize_tables' : True + , 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + def get_browser(self): + br = BasicNewsRecipe.get_browser() + if self.username is not None and self.password is not None: + br.open('http://www.bigoven.com/') + br.select_form(name='form1') + br['TopMenu_bo1$email'] = self.username + br['TopMenu_bo1$password'] = self.password + br.submit() + return br + + remove_attributes = ['style', 'font'] + + keep_only_tags = [dict(name='h1') + ,dict(name='div', attrs={'class':'img'}) + ,dict(name='div', attrs={'id':'intro'}) + ] + + remove_tags = [dict(name='div', attrs={'style':["overflow: visible;"]}) + ,dict(name='div', attrs={'class':['ctas']}) + #,dict(name='a', attrs={'class':['edit']}) + ,dict(name='p', attrs={'class':['byline']}) + ] + + feeds = [(u'4 & 5 Star Rated Recipes', u'http://feeds.feedburner.com/Bigovencom-RecipeRaves?format=xml')] + + def preprocess_html(self, soup): + for tag in soup.findAll(name='a', attrs={'class':['edit']}): + tag.parent.extract() + for tag in soup.findAll(name='a', attrs={'class':['deflink']}): + tag.replaceWith(tag.string) + return soup + + extra_css = ''' + h1{font-family:Arial,Helvetica,sans-serif; font-weight:bold;font-size:large;} + h2{font-family:Arial,Helvetica,sans-serif; font-weight:normal;font-size:medium;} + p{font-family:Arial,Helvetica,sans-serif;font-size:small;} + body{font-family:Helvetica,Arial,sans-serif;font-size:small;} + ''' + diff --git a/resources/recipes/china_economic_net.recipe b/resources/recipes/china_economic_net.recipe new file mode 100644 index 0000000000..825ea007c2 --- /dev/null +++ b/resources/recipes/china_economic_net.recipe @@ -0,0 +1,39 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1278162597(BasicNewsRecipe): + __author__ = 'rty' + title = u'China Economic Net' + oldest_article = 7 + max_articles_per_feed = 100 + + pubisher = 'www.ce.cn - China Economic net - Beijing' + description = 'China Economic Net Magazine' + category = 'Economic News Magazine, Chinese, China' + feeds = [ + (u'Stock Market 股市', u'http://finance.ce.cn/stock/index_6304.xml'), + (u'Money 理财', u'http://finance.ce.cn/money/index_6301.xml'), + (u'Health 健康', u'http://www.ce.cn/health/index_6294.xml'), + (u'Technology 科技', u'http://sci.ce.cn/mainpage/index_6307.xml'), + (u'Domestic Politics 国内时政', u'http://www.ce.cn/xwzx/gnsz/index_6273.xml') + ] + masthead_url = 'http://finance.ce.cn/images/08mdy_logo.gif' + extra_css = ''' + @font-face {font-family: "DroidFont", serif, sans-serif; src: url(res:///system/fonts/DroidSansFallback.ttf); }\n + body {margin-right: 8pt; font-family: 'DroidFont', serif;}\n + h1 {font-family: 'DroidFont', serif;}\n + .articledescription {font-family: 'DroidFont', serif;} + ''' + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + language = 'zh-cn' + encoding = 'gb2312' + conversion_options = {'linearize_tables':True} + + + keep_only_tags = [ + + dict(name='h1', attrs={'id':'articleTitle'}), + dict(name='div', attrs={'class':'laiyuan'}), + dict(name='div', attrs={'id':'articleText'}), + ] diff --git a/resources/recipes/china_press.recipe b/resources/recipes/china_press.recipe new file mode 100644 index 0000000000..502ebfd41c --- /dev/null +++ b/resources/recipes/china_press.recipe @@ -0,0 +1,71 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1277228948(BasicNewsRecipe): + title = u'China Press USA' + oldest_article = 7 + max_articles_per_feed = 100 + + __author__ = 'rty' + __version__ = '1.0' + language = 'zh' + pubisher = 'www.chinapressusa.com' + description = 'Overseas Chinese Network Newspaper in the USA' + category = 'News in Chinese, USA' + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + #encoding = 'GB2312' + encoding = 'UTF-8' + conversion_options = {'linearize_tables':True} + masthead_url ='http://www.chinapressusa.com/common/images/logo.gif' + extra_css = ''' + @font-face { font-family: "DroidFont", serif, sans-serif; src: url(res:///system/fonts/DroidSansFallback.ttf); }\n + body { + margin-right: 8pt; + font-family: 'DroidFont', serif;} + h1 {font-family: 'DroidFont', serif, sans-serif} + .show {font-family: 'DroidFont', serif, sans-serif} + ''' + feeds = [ + (u'\u65b0\u95fb\u9891\u9053', u'http://news.uschinapress.com/news.xml'), + (u'\u534e\u4eba\u9891\u9053', u'http://chinese.uschinapress.com/chinese.xml'), + (u'\u8bc4\u8bba\u9891\u9053', u'http://review.uschinapress.com/review.xml'), + ] + keep_only_tags = [ + dict(name='div', attrs={'class':'show'}), + ] + remove_tags = [ + # dict(name='table', attrs={'class':'xle'}), + dict(name='div', attrs={'class':'time'}), + ] + remove_tags_after = [ + dict(name='div', attrs={'class':'bank17'}), + # dict(name='a', attrs={'class':'ab12'}), + ] + + + def append_page(self, soup, appendtag, position): + pager = soup.find('div',attrs={'id':'displaypagenum'}) + if pager: + nexturl = self.INDEX + pager.a['href'] + soup2 = self.index_to_soup(nexturl) + texttag = soup2.find('div', attrs={'class':'show'}) + for it in texttag.findAll(style=True): + del it['style'] + newpos = len(texttag.contents) + self.append_page(soup2,texttag,newpos) + texttag.extract() + appendtag.insert(position,texttag) + + + def preprocess_html(self, soup): + mtag = '\n' + soup.head.insert(0,mtag) + + for item in soup.findAll(style=True): + del item['style'] + self.append_page(soup, soup.body, 3) + pager = soup.find('div',attrs={'id':'displaypagenum'}) + if pager: + pager.extract() + return soup diff --git a/resources/recipes/editor_and_publisher.recipe b/resources/recipes/editor_and_publisher.recipe index c8f287a0c7..0ec5c59d74 100644 --- a/resources/recipes/editor_and_publisher.recipe +++ b/resources/recipes/editor_and_publisher.recipe @@ -1,14 +1,29 @@ -import re +#!/usr/bin/env python +__license__ = 'GPL v3' +__copyright__ = '2010 elsuave' + from calibre.web.feeds.news import BasicNewsRecipe class EandP(BasicNewsRecipe): title = u'Editor and Publisher' - __author__ = u'Xanthan Gum' + __author__ = u'elsuave (modified from Xanthan Gum)' description = 'News about newspapers and journalism.' + publisher = 'Editor and Publisher' + category = 'news, journalism, industry' language = 'en' - no_stylesheets = True + max_articles_per_feed = 25 + no_stylesheets = True + use_embedded_content = False + encoding = 'utf8' + cover_url = 'http://www.editorandpublisher.com/images/EP_main_logo.gif' + remove_javascript = True - oldest_article = 7 - max_articles_per_feed = 100 + html2lrf_options = [ + '--comment', description + , '--category', category + , '--publisher', publisher + ] + + html2epub_options = 'publisher="' + publisher + '"\ncomments="' + description + '"\ntags="' + category + '"' # Font formatting code borrowed from kwetal @@ -18,17 +33,21 @@ class EandP(BasicNewsRecipe): h2{font-size: large;} ''' - # Delete everything before the article + # Keep only div:itemmgap - remove_tags_before = dict(name='font', attrs={'class':'titlebar_black'}) + keep_only_tags = [ + dict(name='div', attrs={'class':'itemmgap'}) + ] - # Delete everything after the article + # Remove commenting/social media lins - preprocess_regexps = [(re.compile(r'.*', re.DOTALL|re.IGNORECASE), - lambda match: ''),] + remove_tags_after = [dict(name='div', attrs={'class':'clear'})] + + + feeds = [(u'Breaking News', u'http://www.editorandpublisher.com/GenerateRssFeed.aspx'), + (u'Business News', u'http://www.editorandpublisher.com/GenerateRssFeed.aspx?CategoryId=2'), + (u'Ad/Circ News', u'http://www.editorandpublisher.com/GenerateRssFeed.aspx?CategoryId=3'), + (u'Newsroom', u'http://www.editorandpublisher.com/GenerateRssFeed.aspx?CategoryId=4'), + (u'Technology News', u'http://www.editorandpublisher.com/GenerateRssFeed.aspx?CategoryId=5'), + (u'Syndicates News', u'http://www.editorandpublisher.com/GenerateRssFeed.aspx?CategoryId=7')] - feeds = [(u'Breaking News', u'http://feeds.feedburner.com/EditorAndPublisher-BreakingNews'), - (u'Business News', u'http://feeds.feedburner.com/EditorAndPublisher-BusinessNews'), - (u'Newsroom', u'http://feeds.feedburner.com/EditorAndPublisher-Newsroom'), - (u'Technology News', u'http://feeds.feedburner.com/EditorAndPublisher-Technology'), - (u'Syndicates News', u'http://feeds.feedburner.com/EditorAndPublisher-Syndicates')] diff --git a/resources/recipes/elpais_impreso.recipe b/resources/recipes/elpais_impreso.recipe new file mode 100644 index 0000000000..b30db0707a --- /dev/null +++ b/resources/recipes/elpais_impreso.recipe @@ -0,0 +1,86 @@ +# -*- coding: utf-8 -*- +__license__ = 'GPL v3' +__copyright__ = '2010, Darko Miletic ' +''' +www.elpais.com/diario/ +''' + +from calibre import strftime +from calibre.web.feeds.news import BasicNewsRecipe + +class ElPaisImpresa(BasicNewsRecipe): + title = 'El País - edicion impresa' + __author__ = 'Darko Miletic' + description = 'el periodico global en Español' + publisher = 'EDICIONES EL PAIS, S.L.' + category = 'news, politics,Spain,actualidad,noticias,informacion,videos,fotografias,audios,graficos,nacional,internacional,deportes,economia,tecnologia,cultura,gente,television,sociedad,opinion,blogs,foros,chats,encuestas,entrevistas,participacion' + no_stylesheets = True + encoding = 'latin1' + use_embedded_content = False + language = 'es' + publication_type = 'newspaper' + masthead_url = 'http://www.elpais.com/im/tit_logo_global.gif' + index = 'http://www.elpais.com/diario/' + extra_css = ' p{text-align: justify} body{ text-align: left; font-family: Georgia,"Times New Roman",Times,serif } h2{font-family: Arial,Helvetica,sans-serif} img{margin-bottom: 0.4em} ' + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + feeds = [ + (u'Internacional' , index + u'internacional/' ) + ,(u'España' , index + u'espana/' ) + ,(u'Economia' , index + u'economia/' ) + ,(u'Opinion' , index + u'opinion/' ) + ,(u'Viñetas' , index + u'vineta/' ) + ,(u'Sociedad' , index + u'sociedad/' ) + ,(u'Cultura' , index + u'cultura/' ) + ,(u'Tendencias' , index + u'tendencias/' ) + ,(u'Gente' , index + u'gente/' ) + ,(u'Obituarios' , index + u'obituarios/' ) + ,(u'Deportes' , index + u'deportes/' ) + ,(u'Pantallas' , index + u'radioytv/' ) + ,(u'Ultima' , index + u'ultima/' ) + ,(u'Educacion' , index + u'educacion/' ) + ,(u'Saludo' , index + u'salud/' ) + ,(u'Ciberpais' , index + u'ciberpais/' ) + ,(u'EP3' , index + u'ep3/' ) + ,(u'Cine' , index + u'cine/' ) + ,(u'Babelia' , index + u'babelia/' ) + ,(u'El viajero' , index + u'viajero/' ) + ,(u'Negocios' , index + u'negocios/' ) + ,(u'Domingo' , index + u'domingo/' ) + ,(u'El Pais semanal' , index + u'eps/' ) + ,(u'Quadern Catalunya' , index + u'quadern-catalunya/' ) + ] + + keep_only_tags=[dict(attrs={'class':['cabecera_noticia','contenido_noticia']})] + remove_attributes=['width','height'] + remove_tags=[dict(name='link')] + + def parse_index(self): + totalfeeds = [] + lfeeds = self.get_feeds() + for feedobj in lfeeds: + feedtitle, feedurl = feedobj + self.report_progress(0, _('Fetching feed')+' %s...'%(feedtitle if feedtitle else feedurl)) + articles = [] + soup = self.index_to_soup(feedurl) + for item in soup.findAll('a',attrs={'class':['g19r003','g19i003','g17r003','g17i003']}): + url = 'http://www.elpais.com' + item['href'].rpartition('/')[0] + title = self.tag_to_string(item) + date = strftime(self.timefmt) + articles.append({ + 'title' :title + ,'date' :date + ,'url' :url + ,'description':'' + }) + totalfeeds.append((feedtitle, articles)) + return totalfeeds + + def print_version(self, url): + return url + '?print=1' diff --git a/resources/recipes/estadao.recipe b/resources/recipes/estadao.recipe index e42eb0574d..4e520c1135 100644 --- a/resources/recipes/estadao.recipe +++ b/resources/recipes/estadao.recipe @@ -1,7 +1,7 @@ #!/usr/bin/env python __license__ = 'GPL v3' -__copyright__ = '2009, Darko Miletic ' +__copyright__ = '2010, elsuave' ''' estadao.com.br ''' @@ -10,12 +10,12 @@ from calibre.web.feeds.news import BasicNewsRecipe class Estadao(BasicNewsRecipe): title = 'O Estado de S. Paulo' - __author__ = 'Darko Miletic' + __author__ = 'elsuave (modified from Darko Miletic)' description = 'News from Brasil in Portuguese' publisher = 'O Estado de S. Paulo' category = 'news, politics, Brasil' oldest_article = 2 - max_articles_per_feed = 100 + max_articles_per_feed = 25 no_stylesheets = True use_embedded_content = False encoding = 'utf8' @@ -30,13 +30,14 @@ class Estadao(BasicNewsRecipe): html2epub_options = 'publisher="' + publisher + '"\ncomments="' + description + '"\ntags="' + category + '"' - keep_only_tags = [dict(name='div', attrs={'id':'c1'})] + keep_only_tags = [ + dict(name='div', attrs={'class':['bb-md-noticia','c5']}) + ] remove_tags = [ dict(name=['script','object','form','ul']) - ,dict(name='div', attrs={'id':['votacao','estadaohoje']}) - ,dict(name='p', attrs={'id':'ctrl_texto'}) - ,dict(name='p', attrs={'class':'texto'}) + ,dict(name='div', attrs={'class':['fnt2 Color_04 bold','right fnt2 innerTop15 dvTmFont','™_01 right outerLeft15','tituloBox','tags']}) + ,dict(name='div', attrs={'id':['bb-md-noticia-subcom']}) ] feeds = [ @@ -51,13 +52,12 @@ class Estadao(BasicNewsRecipe): ,(u'Vida &', u'http://www.estadao.com.br/rss/vidae.xml') ] - def preprocess_html(self, soup): - ifr = soup.find('iframe') - if ifr: - ifr.extract() - for item in soup.findAll(style=True): - del item['style'] - return soup + language = 'pt' + def get_article_url(self, article): + url = BasicNewsRecipe.get_article_url(self, article) + if '/Multimidia/' not in url: + return url + diff --git a/resources/recipes/evz.ro.recipe b/resources/recipes/evz.ro.recipe new file mode 100644 index 0000000000..bce151d1fc --- /dev/null +++ b/resources/recipes/evz.ro.recipe @@ -0,0 +1,52 @@ +__license__ = 'GPL v3' +__copyright__ = '2010, Darko Miletic ' +''' +evz.ro +''' + +import re +from calibre.web.feeds.news import BasicNewsRecipe + +class EVZ_Ro(BasicNewsRecipe): + title = 'evz.ro' + __author__ = 'Darko Miletic' + description = 'News from Romania' + publisher = 'evz.ro' + category = 'news, politics, Romania' + oldest_article = 2 + max_articles_per_feed = 200 + no_stylesheets = True + encoding = 'utf8' + use_embedded_content = False + language = 'ro' + masthead_url = 'http://www.evz.ro/fileadmin/images/logo.gif' + extra_css = ' body{font-family: Georgia,Arial,Helvetica,sans-serif } .firstP{font-size: 1.125em} .author,.articleInfo{font-size: small} ' + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + preprocess_regexps = [ + (re.compile(r'.*?', re.DOTALL|re.IGNORECASE),lambda match: '<head><title>') + ,(re.compile(r'.*?', re.DOTALL|re.IGNORECASE),lambda match: '') + ] + + remove_tags = [ + dict(name=['form','embed','iframe','object','base','link','script','noscript']) + ,dict(attrs={'class':['section','statsInfo','email il']}) + ,dict(attrs={'id' :'gallery'}) + ] + + remove_tags_after = dict(attrs={'class':'section'}) + keep_only_tags = [dict(attrs={'class':'single'})] + remove_attributes = ['height','width'] + + feeds = [(u'Articles', u'http://www.evz.ro/rss.xml')] + + def preprocess_html(self, soup): + for item in soup.findAll(style=True): + del item['style'] + return soup diff --git a/resources/recipes/foreign_policy.recipe b/resources/recipes/foreign_policy.recipe new file mode 100644 index 0000000000..0d6f9984fd --- /dev/null +++ b/resources/recipes/foreign_policy.recipe @@ -0,0 +1,45 @@ +__license__ = 'GPL v3' +__copyright__ = '2010, Darko Miletic ' +''' +www.foreignpolicy.com +''' + +from calibre.web.feeds.news import BasicNewsRecipe + +class ForeignPolicy(BasicNewsRecipe): + title = 'Foreign Policy' + __author__ = 'Darko Miletic' + description = 'International News' + publisher = 'Washingtonpost.Newsweek Interactive, LLC' + category = 'news, politics, USA' + oldest_article = 31 + max_articles_per_feed = 200 + no_stylesheets = True + encoding = 'utf8' + use_embedded_content = False + language = 'en' + remove_empty_feeds = True + extra_css = ' body{font-family: Georgia,"Times New Roman",Times,serif } img{margin-bottom: 0.4em} h1,h2,h3,h4,h5,h6{font-family: Arial,Helvetica,sans-serif} ' + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + keep_only_tags = [dict(attrs={'id':['art-mast','art-body','auth-bio']})] + remove_tags = [dict(name='iframe'),dict(attrs={'id':['share-box','base-ad']})] + remove_attributes = ['height','width'] + + + feeds = [(u'Articles', u'http://www.foreignpolicy.com/node/feed')] + + def print_version(self, url): + return url + '?print=yes&page=full' + + def preprocess_html(self, soup): + for item in soup.findAll(style=True): + del item['style'] + return soup + diff --git a/resources/recipes/haaretz_en.recipe b/resources/recipes/haaretz_en.recipe index 4df6b45a3e..4404624aff 100644 --- a/resources/recipes/haaretz_en.recipe +++ b/resources/recipes/haaretz_en.recipe @@ -1,56 +1,95 @@ __license__ = 'GPL v3' __copyright__ = '2010, Darko Miletic ' ''' -haaretz.com +www.haaretz.com ''' +import re +from calibre import strftime +from time import gmtime from calibre.web.feeds.news import BasicNewsRecipe -class Haaretz_en(BasicNewsRecipe): - title = 'Haaretz in English' +class HaaretzPrint_en(BasicNewsRecipe): + title = 'Haaretz - print edition' __author__ = 'Darko Miletic' - description = 'Haaretz.com, the online edition of Haaretz Newspaper in Israel, and analysis from Israel and the Middle East. Haaretz.com provides extensive and in-depth coverage of Israel, the Jewish World and the Middle East, including defense, diplomacy, the Arab-Israeli conflict, the peace process, Israeli politics, Jerusalem affairs, international relations, Iran, Iraq, Syria, Lebanon, the Palestinian Authority, the West Bank and the Gaza Strip, the Israeli business world and Jewish life in Israel and the Diaspora. ' - publisher = 'haaretz.com' - category = 'news, politics, Israel' + description = "Haaretz.com is the world's leading English-language Website for real-time news and analysis of Israel and the Middle East." + publisher = 'Haaretz' + category = "news, Haaretz, Israel news, Israel newspapers, Israel business news, Israel financial news, Israeli news,Israeli newspaper, Israeli newspapers, news from Israel, news in Israel, news Israel, news on Israel, newspaper Israel, Israel sports news, Israel diplomacy news" oldest_article = 2 max_articles_per_feed = 200 no_stylesheets = True - encoding = 'cp1252' + encoding = 'utf8' use_embedded_content = False language = 'en_IL' publication_type = 'newspaper' - remove_empty_feeds = True - masthead_url = 'http://www.haaretz.com/images/logos/logoGrey.gif' + PREFIX = 'http://www.haaretz.com' + masthead_url = PREFIX + '/images/logos/logoGrey.gif' extra_css = ' body{font-family: Verdana,Arial,Helvetica,sans-serif } ' + preprocess_regexps = [(re.compile(r'.*?', re.DOTALL|re.IGNORECASE),lambda match: '')] + conversion_options = { - 'comment' : description - , 'tags' : category - , 'publisher' : publisher - , 'language' : language + 'comment' : description + , 'tags' : category + , 'publisher': publisher + , 'language' : language } - remove_tags = [dict(name='div', attrs={'class':['rightcol']}),dict(name='table')] - remove_tags_before = dict(name='h1') - remove_tags_after = dict(attrs={'id':'innerArticle'}) - keep_only_tags = [dict(attrs={'id':'content'})] + keep_only_tags = [dict(attrs={'id':'threecolumns'})] + remove_attributes = ['width','height'] + remove_tags = [ + dict(name=['iframe','link','object','embed']) + ,dict(name='div',attrs={'class':'rightcol'}) + ] feeds = [ - (u'Opinion' , u'http://www.haaretz.com/cmlink/opinion-rss-1.209234?localLinksEnabled=false' ) - ,(u'Defense and diplomacy' , u'http://www.haaretz.com/cmlink/defense-and-diplomacy-rss-1.208894?localLinksEnabled=false') - ,(u'National' , u'http://www.haaretz.com/cmlink/national-rss-1.208896?localLinksEnabled=false' ) - ,(u'International' , u'http://www.haaretz.com/cmlink/international-rss-1.208898?localLinksEnabled=false' ) - ,(u'Jewish World' , u'http://www.haaretz.com/cmlink/jewish-world-rss-1.209085?localLinksEnabled=false' ) - ,(u'Business' , u'http://www.haaretz.com/cmlink/business-print-rss-1.264904?localLinksEnabled=false' ) - ,(u'Real Estate' , u'http://www.haaretz.com/cmlink/real-estate-print-rss-1.264977?localLinksEnabled=false' ) - ,(u'Features' , u'http://www.haaretz.com/cmlink/features-print-rss-1.264912?localLinksEnabled=false' ) - ,(u'Arts and leisure' , u'http://www.haaretz.com/cmlink/arts-and-leisure-rss-1.286090?localLinksEnabled=false' ) - ,(u'Books' , u'http://www.haaretz.com/cmlink/books-rss-1.264947?localLinksEnabled=false' ) - ,(u'Food and Wine' , u'http://www.haaretz.com/cmlink/food-and-wine-print-rss-1.265034?localLinksEnabled=false' ) - ,(u'Sports' , u'http://www.haaretz.com/cmlink/sports-rss-1.286092?localLinksEnabled=false' ) + (u'News' , PREFIX + u'/print-edition/news' ) + ,(u'Opinion' , PREFIX + u'/print-edition/opinion' ) + ,(u'Business' , PREFIX + u'/print-edition/business' ) + ,(u'Real estate' , PREFIX + u'/print-edition/real-estate' ) + ,(u'Sports' , PREFIX + u'/print-edition/sports' ) + ,(u'Travel' , PREFIX + u'/print-edition/travel' ) + ,(u'Books' , PREFIX + u'/print-edition/books' ) + ,(u'Food & Wine' , PREFIX + u'/print-edition/food-wine' ) + ,(u'Arts & Leisure', PREFIX + u'/print-edition/arts-leisure' ) + ,(u'Features' , PREFIX + u'/print-edition/features' ) ] + + def print_version(self, url): + article = url.rpartition('/')[2] + return 'http://www.haaretz.com/misc/article-print-page/' + article + + def parse_index(self): + totalfeeds = [] + lfeeds = self.get_feeds() + for feedobj in lfeeds: + feedtitle, feedurl = feedobj + self.report_progress(0, _('Fetching feed')+' %s...'%(feedtitle if feedtitle else feedurl)) + articles = [] + soup = self.index_to_soup(feedurl) + for item in soup.findAll(attrs={'class':'text'}): + sp = item.find('span',attrs={'class':'h3 font-weight-normal'}) + desc = item.find('p') + description = '' + if sp: + if desc: + description = self.tag_to_string(desc) + link = sp.a + url = self.PREFIX + link['href'] + title = self.tag_to_string(link) + times = strftime('%a, %d %b %Y %H:%M:%S +0000',gmtime()) + articles.append({ + 'title' :title + ,'date' :times + ,'url' :url + ,'description':description + }) + totalfeeds.append((feedtitle, articles)) + return totalfeeds + + def preprocess_html(self, soup): for item in soup.findAll(style=True): del item['style'] diff --git a/resources/recipes/hindu.recipe b/resources/recipes/hindu.recipe index 6c0d42660b..cc5305eb77 100644 --- a/resources/recipes/hindu.recipe +++ b/resources/recipes/hindu.recipe @@ -2,7 +2,7 @@ from __future__ import with_statement __license__ = 'GPL 3' __copyright__ = '2009, Kovid Goyal ' -import re +import time from calibre.web.feeds.news import BasicNewsRecipe class TheHindu(BasicNewsRecipe): @@ -10,45 +10,41 @@ class TheHindu(BasicNewsRecipe): language = 'en_IN' oldest_article = 7 - __author__ = 'Kovid Goyal and Sujata Raman' + __author__ = 'Kovid Goyal' max_articles_per_feed = 100 no_stylesheets = True - remove_tags_before = {'name':'font', 'class':'storyhead'} - preprocess_regexps = [ - (re.compile(r'.*', re.DOTALL), - lambda match: ''), - ] - extra_css = ''' - .storyhead{font-family:Arial,Helvetica,sans-serif; font-size:large; color:#000099;} - body{font-family:Verdana,Arial,Helvetica,sans-serif; font-size:x-small; text-align:left;} - ''' - feeds = [ - (u'Main - Front Page', u'http://www.hindu.com/rss/01hdline.xml'), - (u'Main - National', u'http://www.hindu.com/rss/02hdline.xml'), - (u'Main - International', u'http://www.hindu.com/rss/03hdline.xml'), - (u'Main - Opinion', u'http://www.hindu.com/rss/05hdline.xml'), - (u'Main - Business', u'http://www.hindu.com/rss/06hdline.xml'), - (u'Main - Sport', u'http://www.hindu.com/rss/07hdline.xml'), - (u'Main - Weather / Religion / Crossword / Cartoon', - u'http://www.hindu.com/rss/10hdline.xml'), - (u'Main - Engagements', u'http://www.hindu.com/rss/26hdline.xml'), - (u'Supplement - Literary Review', - u'http://www.hindu.com/rss/lrhdline.xml'), - (u'Supplement - Sunday Magazine', - u'http://www.hindu.com/rss/maghdline.xml'), - (u'Supplement - Open Page', u'http://www.hindu.com/rss/ophdline.xml'), - (u'Supplement - Business Review', - u'http://www.hindu.com/rss/bizhdline.xml'), - (u'Supplement - Book Review', - u'http://www.hindu.com/rss/brhdline.xml'), - (u'Supplement - Science & Technology', - u'http://www.hindu.com/rss/setahdline.xml') - ] + keep_only_tags = [dict(id='content')] + remove_tags = [dict(attrs={'class':['article-links', 'breadcr']}), + dict(id=['email-section', 'right-column', 'printfooter'])] + + extra_css = '.photo-caption { font-size: smaller }' def postprocess_html(self, soup, first_fetch): for t in soup.findAll(['table', 'tr', 'td','center']): t.name = 'div' - - return soup + + def parse_index(self): + today = time.strftime('%Y-%m-%d') + soup = self.index_to_soup( + 'http://www.thehindu.com/todays-paper/tp-index/?date=' + today) + div = soup.find(id='left-column') + feeds = [] + current_section = None + current_articles = [] + for x in div.findAll(['h3', 'div']): + if current_section and x.get('class', '') == 'tpaper': + a = x.find('a', href=True) + if a is not None: + current_articles.append({'url':a['href']+'?css=print', + 'title':self.tag_to_string(a), 'date': '', + 'description':''}) + if x.name == 'h3': + if current_section and current_articles: + feeds.append((current_section, current_articles)) + current_section = self.tag_to_string(x) + current_articles = [] + return feeds + + diff --git a/resources/recipes/houston_chronicle.recipe b/resources/recipes/houston_chronicle.recipe index 3ec1abbf0f..3390228455 100644 --- a/resources/recipes/houston_chronicle.recipe +++ b/resources/recipes/houston_chronicle.recipe @@ -1,12 +1,15 @@ #!/usr/bin/env python # vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +import string, pprint + from calibre.web.feeds.news import BasicNewsRecipe class HoustonChronicle(BasicNewsRecipe): title = u'The Houston Chronicle' description = 'News from Houston, Texas' - __author__ = 'Kovid Goyal and Sujata Raman' + __author__ = 'Kovid Goyal' language = 'en' timefmt = ' [%a, %d %b, %Y]' no_stylesheets = True @@ -38,54 +41,23 @@ class HoustonChronicle(BasicNewsRecipe): def parse_index(self): - soup = self.index_to_soup('http://www.chron.com/news/') - container = soup.find('table', attrs={'class':'body-columns'}) - + categories = ['news', 'sports', 'business', 'entertainment', 'life', + 'travel'] feeds = [] - current_section = 'Top Stories' - current_articles = [] - - self.log('\tFound section:', current_section) - - for div in container.findAll('div'): - if div.get('class', None) == 'module-mast': - t = self.tag_to_string(div).replace(u'\xbb', '').strip() - if t and 'interactives' not in t: - if current_section and current_articles: - feeds.append((current_section, current_articles)) - current_section = t - current_articles = [] - self.log('\tFound section:', current_section) - elif div.get('storyid', False): - a = div.find('a', href=True) - if a: - title = self.tag_to_string(a) - url = a.get('href') - if title and url: - if url.startswith('/'): - url = 'http://www.chron.com'+url - self.log('\t\tFound article:', title) - self.log('\t\t\t', url) - current_articles.append({'title':title, 'url':url, - 'date':'', 'description':''}) - elif div.get('class', None) == 'columnbox' and \ - 'special' in current_section.lower(): - a = div.find('a') - if a: - title = self.tag_to_string(a) - url = a.get('href') - if title and url: - if not url.startswith('/'): continue - url = 'http://www.chron.com'+url - self.log('\t\tFound article:', title) - self.log('\t\t\t', url) - a.extract() - desc = self.tag_to_string(div) - current_articles.append({'title':title, 'url':url, - 'date':'', 'description':desc}) - - if current_section and current_articles: - feeds.append((current_section, current_articles)) + for cat in categories: + articles = [] + soup = self.index_to_soup('http://www.chron.com/%s/'%cat) + for elem in soup.findAll(comptype='story', storyid=True): + a = elem.find('a', href=True) + if a is None: continue + url = a['href'] + if not url.startswith('http://'): + url = 'http://www.chron.com'+url + articles.append({'title':self.tag_to_string(a), 'url':url, + 'description':'', 'date':''}) + pprint.pprint(articles[-1]) + if articles: + feeds.append((string.capwords(cat), articles)) return feeds diff --git a/resources/recipes/ifzm.recipe b/resources/recipes/ifzm.recipe new file mode 100644 index 0000000000..407acefdd4 --- /dev/null +++ b/resources/recipes/ifzm.recipe @@ -0,0 +1,50 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1277305250(BasicNewsRecipe): + title = u'infzm - China Southern Weekly' + oldest_article = 14 + max_articles_per_feed = 100 + + feeds = [(u'\u5357\u65b9\u5468\u672b-\u70ed\u70b9\u65b0\u95fb', u'http://www.infzm.com/rss/home/rss2.0.xml'), + (u'\u5357\u65b9\u5468\u672b-\u7ecf\u6d4e\u65b0\u95fb', u'http://www.infzm.com/rss/economic.xml'), + (u'\u5357\u65b9\u5468\u672b-\u6587\u5316\u65b0\u95fb', u'http://www.infzm.com/rss/culture.xml'), + (u'\u5357\u65b9\u5468\u672b-\u751f\u6d3b\u65f6\u5c1a', u'http://www.infzm.com/rss/lifestyle.xml'), + (u'\u5357\u65b9\u5468\u672b-\u89c2\u70b9', u'http://www.infzm.com/rss/opinion.xml') + ] + __author__ = 'rty' + __version__ = '1.0' + language = 'zh' + pubisher = 'http://www.infzm.com' + description = 'Chinese Weekly Tabloid' + category = 'News, China' + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + #encoding = 'GB2312' + encoding = 'UTF-8' + conversion_options = {'linearize_tables':True} + masthead_url = 'http://i50.tinypic.com/2qmfb7l.jpg' + + extra_css = ''' + @font-face { font-family: "DroidFont", serif, sans-serif; src: url(res:///system/fonts/DroidSansFallback.ttf); }\n + body { + margin-right: 8pt; + font-family: 'DroidFont', serif;} + .detailContent {font-family: 'DroidFont', serif, sans-serif} + ''' + + keep_only_tags = [ + dict(name='div', attrs={'id':'detailContent'}), + ] + remove_tags = [ + dict(name='div', attrs={'id':['detailTools', 'detailSideL', 'pageNum']}), + ] + remove_tags_after = [ + dict(name='div', attrs={'id':'pageNum'}), + ] + def preprocess_html(self, soup): + for item in soup.findAll(color=True): + del item['font'] + for item in soup.findAll(style=True): + del item['style'] + return soup diff --git a/resources/recipes/lrb.recipe b/resources/recipes/lrb.recipe index 0076b3e697..4a203c80ae 100644 --- a/resources/recipes/lrb.recipe +++ b/resources/recipes/lrb.recipe @@ -1,6 +1,6 @@ __license__ = 'GPL v3' -__copyright__ = '2008, Darko Miletic ' +__copyright__ = '2008-2010, Darko Miletic ' ''' lrb.co.uk ''' @@ -8,32 +8,38 @@ lrb.co.uk from calibre.web.feeds.news import BasicNewsRecipe class LondonReviewOfBooks(BasicNewsRecipe): - title = u'London Review of Books' - __author__ = u'Darko Miletic' - description = u'Literary review publishing essay-length book reviews and topical articles on politics, literature, history, philosophy, science and the arts by leading writers and thinkers' - category = 'news, literature, England' - publisher = 'London Review of Books' - oldest_article = 7 + title = 'London Review of Books (free)' + __author__ = 'Darko Miletic' + description = 'Literary review publishing essay-length book reviews and topical articles on politics, literature, history, philosophy, science and the arts by leading writers and thinkers' + category = 'news, literature, UK' + publisher = 'LRB ltd.' + oldest_article = 15 max_articles_per_feed = 100 language = 'en_GB' no_stylesheets = True use_embedded_content = False encoding = 'utf-8' + publication_type = 'magazine' + masthead_url = 'http://www.lrb.co.uk/assets/images/lrb_logo_big.gif' + extra_css = ' body{font-family: Georgia,Palatino,"Palatino Linotype",serif} ' - conversion_options = { + conversion_options = { 'comments' : description ,'tags' : category ,'language' : language ,'publisher' : publisher } - - keep_only_tags = [dict(name='div' , attrs={'id' :'main'})] - remove_tags = [ - dict(name='div' , attrs={'class':['pagetools','issue-nav-controls','nocss']}) - ,dict(name='div' , attrs={'id' :['mainmenu','precontent','otherarticles'] }) - ,dict(name='span', attrs={'class':['inlineright','article-icons']}) - ,dict(name='ul' , attrs={'class':'article-controls'}) - ,dict(name='p' , attrs={'class':'meta-info' }) - ] + + keep_only_tags = [dict(attrs={'class':['article-body indent','letters','article-list']})] + remove_attributes = ['width','height'] feeds = [(u'London Review of Books', u'http://www.lrb.co.uk/lrbrss.xml')] + + def get_cover_url(self): + cover_url = None + soup = self.index_to_soup('http://www.lrb.co.uk/') + cover_item = soup.find('p',attrs={'class':'cover'}) + if cover_item: + cover_url = 'http://www.lrb.co.uk' + cover_item.a.img['src'] + return cover_url + diff --git a/resources/recipes/lrb_payed.recipe b/resources/recipes/lrb_payed.recipe new file mode 100644 index 0000000000..4888f61cb6 --- /dev/null +++ b/resources/recipes/lrb_payed.recipe @@ -0,0 +1,75 @@ + +__license__ = 'GPL v3' +__copyright__ = '2010, Darko Miletic ' +''' +lrb.co.uk +''' +from calibre import strftime +from calibre.web.feeds.news import BasicNewsRecipe + +class LondonReviewOfBooksPayed(BasicNewsRecipe): + title = 'London Review of Books' + __author__ = 'Darko Miletic' + description = 'Subscription content. Literary review publishing essay-length book reviews and topical articles on politics, literature, history, philosophy, science and the arts by leading writers and thinkers' + category = 'news, literature, UK' + publisher = 'LRB Ltd.' + max_articles_per_feed = 100 + language = 'en_GB' + no_stylesheets = True + delay = 1 + use_embedded_content = False + encoding = 'utf-8' + INDEX = 'http://www.lrb.co.uk' + LOGIN = INDEX + '/login' + masthead_url = INDEX + '/assets/images/lrb_logo_big.gif' + needs_subscription = True + publication_type = 'magazine' + extra_css = ' body{font-family: Georgia,Palatino,"Palatino Linotype",serif} ' + + + def get_browser(self): + br = BasicNewsRecipe.get_browser() + if self.username is not None and self.password is not None: + br.open(self.LOGIN) + br.select_form(nr=1) + br['username'] = self.username + br['password'] = self.password + br.submit() + return br + + def parse_index(self): + articles = [] + soup = self.index_to_soup(self.INDEX) + cover_item = soup.find('p',attrs={'class':'cover'}) + lrbtitle = self.title + if cover_item: + self.cover_url = self.INDEX + cover_item.a.img['src'] + content = self.INDEX + cover_item.a['href'] + soup2 = self.index_to_soup(content) + sitem = soup2.find(attrs={'class':'article-list'}) + lrbtitle = soup2.head.title.string + for item in sitem.findAll('a',attrs={'class':'title'}): + description = u'' + title_prefix = u'' + feed_link = item + if feed_link.has_key('href'): + url = self.INDEX + feed_link['href'] + title = title_prefix + self.tag_to_string(feed_link) + date = strftime(self.timefmt) + articles.append({ + 'title' :title + ,'date' :date + ,'url' :url + ,'description':description + }) + return [(lrbtitle, articles)] + + conversion_options = { + 'comments' : description + ,'tags' : category + ,'language' : language + ,'publisher' : publisher + } + + keep_only_tags = [dict(name='div' , attrs={'class':['article-body indent','letters']})] + remove_attributes = ['width','height'] diff --git a/resources/recipes/national_post.recipe b/resources/recipes/national_post.recipe index 4fe188934c..00eb918d02 100644 --- a/resources/recipes/national_post.recipe +++ b/resources/recipes/national_post.recipe @@ -7,18 +7,18 @@ class NYTimes(BasicNewsRecipe): __author__ = 'Krittika Goyal' description = 'Canadian national newspaper' timefmt = ' [%d %b, %Y]' - needs_subscription = False language = 'en_CA' + needs_subscription = False no_stylesheets = True #remove_tags_before = dict(name='h1', attrs={'class':'heading'}) - #remove_tags_after = dict(name='td', attrs={'class':'newptool1'}) + remove_tags_after = dict(name='div', attrs={'class':'npStoryTools npWidth1-6 npRight npTxtStrong'}) remove_tags = [ dict(name='iframe'), - dict(name='div', attrs={'class':'story-tools'}), + dict(name='div', attrs={'class':['story-tools', 'npStoryTools npWidth1-6 npRight npTxtStrong']}), #dict(name='div', attrs={'id':['qrformdiv', 'inSection', 'alpha-inner']}), #dict(name='form', attrs={'onsubmit':''}), - #dict(name='table', attrs={'cellspacing':'0'}), + dict(name='ul', attrs={'class':'npTxtAlt npGroup npTxtCentre npStoryShare npTxtStrong npTxtDim'}), ] # def preprocess_html(self, soup): @@ -37,7 +37,7 @@ class NYTimes(BasicNewsRecipe): def parse_index(self): soup = self.nejm_get_index() - div = soup.find(id='LegoText4') + div = soup.find(id='npContentMain') current_section = None current_articles = [] @@ -50,7 +50,7 @@ class NYTimes(BasicNewsRecipe): current_section = self.tag_to_string(x) current_articles = [] self.log('\tFound section:', current_section) - if current_section is not None and x.name == 'h3': + if current_section is not None and x.name == 'h5': # Article found title = self.tag_to_string(x) a = x.find('a', href=lambda x: x and 'story' in x) @@ -59,8 +59,8 @@ class NYTimes(BasicNewsRecipe): url = a.get('href', False) if not url or not title: continue - if url.startswith('story'): - url = 'http://www.nationalpost.com/todays-paper/'+url + #if url.startswith('story'): + url = 'http://www.nationalpost.com/todays-paper/'+url self.log('\t\tFound article:', title) self.log('\t\t\t', url) current_articles.append({'title': title, 'url':url, @@ -70,28 +70,11 @@ class NYTimes(BasicNewsRecipe): feeds.append((current_section, current_articles)) return feeds - def preprocess_html(self, soup): - story = soup.find(name='div', attrs={'class':'triline'}) - page2_link = soup.find('p','pagenav') - if page2_link: - atag = page2_link.find('a',href=True) - if atag: - page2_url = atag['href'] - if page2_url.startswith('story'): - page2_url = 'http://www.nationalpost.com/todays-paper/'+page2_url - elif page2_url.startswith( '/todays-paper/story.html'): - page2_url = 'http://www.nationalpost.com/'+page2_url - page2_soup = self.index_to_soup(page2_url) - if page2_soup: - page2_content = page2_soup.find('div','story-content') - if page2_content: - full_story = BeautifulSoup('

') - full_story.insert(0,story) - full_story.insert(1,page2_content) - story = full_story + story = soup.find(name='div', attrs={'id':'npContentMain'}) + ##td = heading.findParent(name='td') + ##td.extract() soup = BeautifulSoup('t') body = soup.find(name='body') body.insert(0, story) return soup - diff --git a/resources/recipes/new_scientist.recipe b/resources/recipes/new_scientist.recipe index 1727a926ed..b40be458bc 100644 --- a/resources/recipes/new_scientist.recipe +++ b/resources/recipes/new_scientist.recipe @@ -32,15 +32,16 @@ class NewScientist(BasicNewsRecipe): } preprocess_regexps = [(re.compile(r'.*?', re.DOTALL|re.IGNORECASE),lambda match: '')] - keep_only_tags = [dict(name='div', attrs={'id':['pgtop','maincol','nsblgposts','hldgalcols']})] + keep_only_tags = [dict(name='div', attrs={'id':['pgtop','maincol','blgmaincol','nsblgposts','hldgalcols']})] remove_tags = [ dict(name='div' , attrs={'class':['hldBd','adline','pnl','infotext' ]}) - ,dict(name='div' , attrs={'id' :['compnl','artIssueInfo','artTools']}) + ,dict(name='div' , attrs={'id' :['compnl','artIssueInfo','artTools','comments','blgsocial']}) ,dict(name='p' , attrs={'class':['marker','infotext' ]}) ,dict(name='meta' , attrs={'name' :'description' }) + ,dict(name='a' , attrs={'rel' :'tag' }) ] - remove_tags_after = dict(attrs={'class':'nbpcopy'}) + remove_tags_after = dict(attrs={'class':['nbpcopy','comments']}) remove_attributes = ['height','width'] feeds = [ diff --git a/resources/recipes/nytimes.recipe b/resources/recipes/nytimes.recipe index 9fbcf6d3d1..a2d5135045 100644 --- a/resources/recipes/nytimes.recipe +++ b/resources/recipes/nytimes.recipe @@ -17,7 +17,7 @@ class NYTimes(BasicNewsRecipe): title = 'New York Times Top Stories' __author__ = 'GRiker' language = 'en' - requires_version = (0, 7, 3) + requires_version = (0, 7, 5) description = 'Top Stories from the New York Times' # List of sections typically included in Top Stories. Use a keyword from the @@ -79,6 +79,7 @@ class NYTimes(BasicNewsRecipe): 'doubleRule', 'dottedLine', 'entry-meta', + 'entry-response module', 'icon enlargeThis', 'leftNavTabs', 'module box nav', @@ -88,6 +89,7 @@ class NYTimes(BasicNewsRecipe): 'relatedSearchesModule', 'side_tool', 'singleAd', + 'subNavigation clearfix', 'subNavigation tabContent active', 'subNavigation tabContent active clearfix', ]}), @@ -110,6 +112,7 @@ class NYTimes(BasicNewsRecipe): 'navigation', 'portfolioInline', 'relatedArticles', + 'respond', 'side_search', 'side_index', 'side_tool', @@ -458,8 +461,10 @@ class NYTimes(BasicNewsRecipe): if mp_off >= 0: c = c[:mp_off] emTag.insert(0, c) - hrTag = Tag(soup, 'hr') - #hrTag['style'] = "margin-top:0em;margin-bottom:0em" + #hrTag = Tag(soup, 'hr') + #hrTag['class'] = 'caption_divider' + hrTag = Tag(soup, 'div') + hrTag['class'] = 'divider' emTag.insert(1, hrTag) caption.replaceWith(emTag) diff --git a/resources/recipes/nytimes_sub.recipe b/resources/recipes/nytimes_sub.recipe index bcec51ce97..1814132667 100644 --- a/resources/recipes/nytimes_sub.recipe +++ b/resources/recipes/nytimes_sub.recipe @@ -13,14 +13,14 @@ Story import re, string, time from calibre import strftime from calibre.web.feeds.recipes import BasicNewsRecipe -from calibre.ebooks.BeautifulSoup import BeautifulSoup, BeautifulStoneSoup, NavigableString, Tag +from calibre.ebooks.BeautifulSoup import BeautifulStoneSoup, NavigableString, Tag class NYTimes(BasicNewsRecipe): title = 'The New York Times' __author__ = 'GRiker' language = 'en' - requires_version = (0, 7, 3) + requires_version = (0, 7, 5) description = 'Daily news from the New York Times (subscription version)' allSectionKeywords = ['The Front Page', 'International','National','Obituaries','Editorials', @@ -66,6 +66,7 @@ class NYTimes(BasicNewsRecipe): 'doubleRule', 'dottedLine', 'entry-meta', + 'entry-response module', 'icon enlargeThis', 'leftNavTabs', 'module box nav', @@ -75,6 +76,7 @@ class NYTimes(BasicNewsRecipe): 'relatedSearchesModule', 'side_tool', 'singleAd', + 'subNavigation clearfix', 'subNavigation tabContent active', 'subNavigation tabContent active clearfix', ]}), @@ -97,6 +99,7 @@ class NYTimes(BasicNewsRecipe): 'navigation', 'portfolioInline', 'relatedArticles', + 'respond', 'side_search', 'side_index', 'side_tool', @@ -333,7 +336,7 @@ class NYTimes(BasicNewsRecipe): self.log(">>> No class:'columnGroup first' found <<<") # Change class="kicker" to

kicker = soup.find(True, {'class':'kicker'}) - if kicker and kicker.contents[0]: + if kicker and kicker.contents and kicker.contents[0]: h3Tag = Tag(soup, "h3") h3Tag.insert(0, self.fixChars(self.tag_to_string(kicker, use_alt=False))) @@ -348,8 +351,10 @@ class NYTimes(BasicNewsRecipe): if mp_off >= 0: c = c[:mp_off] emTag.insert(0, c) - hrTag = Tag(soup, 'hr') - #hrTag['style'] = "margin-top:0em;margin-bottom:0em" + #hrTag = Tag(soup, 'hr') + #hrTag['class'] = 'caption_divider' + hrTag = Tag(soup, 'div') + hrTag['class'] = 'divider' emTag.insert(1, hrTag) caption.replaceWith(emTag) @@ -417,12 +422,11 @@ class NYTimes(BasicNewsRecipe): return soup - def postprocess_book(self, oeb, opts, log) : - print "\npostprocess_book()\n" - - def extract_byline(href) : - # :' + articlebody = soup.find('div',attrs={'class':'articlebody'}) + if not articlebody: + print 'postprocess_book.extract_description(): Did not find
:' print soup.prettify() return None - paras = articleBody.findAll('p') + paras = articlebody.findAll('p') for p in paras: if p.renderContents() > '' : return self.massageNCXText(self.tag_to_string(p,use_alt=False)) return None - # Method entry point here - # Single section toc looks different than multi-section tocs - if oeb.toc.depth() == 2 : - for article in oeb.toc : - if article.author is None : - article.author = extract_byline(article.href) - if article.description is None : - article.description = extract_description(article.href).decode('utf-8') - elif oeb.toc.depth() == 3 : - for section in oeb.toc : - for article in section : - if article.author is None : - article.author = extract_byline(article.href) - if article.description is None : - article.description = extract_description(article.href) + if not article.author: + article.author = extract_author(soup) + if not article.summary: + article.summary = article.text_summary = extract_description(soup) def strip_anchors(self,soup): paras = soup.findAll(True) diff --git a/resources/recipes/oldnewthing.recipe b/resources/recipes/oldnewthing.recipe index fc9749d403..8280451e17 100644 --- a/resources/recipes/oldnewthing.recipe +++ b/resources/recipes/oldnewthing.recipe @@ -28,7 +28,7 @@ class OldNewThing(BasicNewsRecipe): } remove_attributes = ['width','height'] - keep_only_tags = [dict(attrs={'class':['postsub','comment']})] - + keep_only_tags = [dict(attrs={'class':'full-post'})] + remove_tags = [dict(attrs={'class':['post-attributes','post-tags','post-actions']})] feeds = [(u'Posts', u'http://blogs.msdn.com/oldnewthing/rss.xml')] diff --git a/resources/recipes/singtao_daily.recipe b/resources/recipes/singtao_daily.recipe new file mode 100644 index 0000000000..f25014ed9a --- /dev/null +++ b/resources/recipes/singtao_daily.recipe @@ -0,0 +1,79 @@ +from calibre.web.feeds.recipes import BasicNewsRecipe + +class AdvancedUserRecipe1278063072(BasicNewsRecipe): + title = u'Singtao Daily - Canada' + oldest_article = 7 + max_articles_per_feed = 100 + __author__ = 'rty' + description = 'Toronto Canada Chinese Newspaper' + publisher = 'news.singtao.ca' + category = 'Chinese, News, Canada' + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + language = 'zh' + conversion_options = {'linearize_tables':True} + masthead_url = 'http://news.singtao.ca/i/site_2009/logo.jpg' + extra_css = ''' + @font-face {font-family: "DroidFont", serif, sans-serif; src: url(res:///system/fonts/DroidSansFallback.ttf); }\ + + body {text-align: justify; margin-right: 8pt; font-family: 'DroidFont', serif;}\ + + h1 {font-family: 'DroidFont', serif;}\ + + .articledescription {font-family: 'DroidFont', serif;} + ''' + keep_only_tags = [ + dict(name='div', attrs={'id':['title','storybody']}), + dict(name='div', attrs={'class':'content'}) + ] + + def parse_index(self): + feeds = [] + for title, url in [ + ('Editorial', + 'http://news.singtao.ca/toronto/editorial.html'), + ('Toronto \xe5\x9f\x8e\xe5\xb8\x82/\xe7\xa4\xbe\xe5\x8d\x80'.decode('utf-8'), + 'http://news.singtao.ca/toronto/city.html'), + ('Canada \xe5\x8a\xa0\xe5\x9c\x8b'.decode('utf-8'), + 'http://news.singtao.ca/toronto/canada.html'), + ('Entertainment', + 'http://news.singtao.ca/toronto/entertainment.html'), + ('World', + 'http://news.singtao.ca/toronto/world.html'), + ('Finance \xe5\x9c\x8b\xe9\x9a\x9b\xe8\xb2\xa1\xe7\xb6\x93'.decode('utf-8'), + 'http://news.singtao.ca/toronto/finance.html'), + ('Sports', 'http://news.singtao.ca/toronto/sports.html'), + ]: + articles = self.parse_section(url) + if articles: + feeds.append((title, articles)) + return feeds + + def parse_section(self, url): + soup = self.index_to_soup(url) + div = soup.find(attrs={'class': ['newslist paddingL10T10','newslist3 paddingL10T10']}) + #date = div.find(attrs={'class': 'underlineBLK'}) + current_articles = [] + for li in div.findAll('li'): + a = li.find('a', href = True) + if a is None: + continue + title = self.tag_to_string(a) + url = a.get('href', False) + if not url or not title: + continue + if url.startswith('/'): + url = 'http://news.singtao.ca'+url + # self.log('\ \ Found article:', title) + # self.log('\ \ \ ', url) + current_articles.append({'title': title, 'url': url, 'description':''}) + + return current_articles + + def preprocess_html(self, soup): + for item in soup.findAll(style=True): + del item['style'] + for item in soup.findAll(width=True): + del item['width'] + return soup diff --git a/resources/recipes/statesman.recipe b/resources/recipes/statesman.recipe new file mode 100644 index 0000000000..1bbf94fa5b --- /dev/null +++ b/resources/recipes/statesman.recipe @@ -0,0 +1,35 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1278049615(BasicNewsRecipe): + title = u'Statesman' + pubisher = 'http://www.statesman.com/' + description = 'Austin Texas Daily Newspaper' + category = 'News, Austin, Texas' + __author__ = 'rty' + oldest_article = 3 + + max_articles_per_feed = 100 + + feeds = [(u'News', u'http://www.statesman.com/section-rss.do?source=news&includeSubSections=true'), + (u'Business', u'http://www.statesman.com/section-rss.do?source=business&includeSubSections=true'), + (u'Life', u'http://www.statesman.com/section-rss.do?source=life&includesubsection=true'), + (u'Editorial', u'http://www.statesman.com/section-rss.do?source=opinion&includesubsections=true'), + (u'Sports', u'http://www.statesman.com/section-rss.do?source=sports&includeSubSections=true') + ] + masthead_url = "http://www.statesman.com/images/cmg-logo.gif" + #temp_files = [] + #articles_are_obfuscated = True + + remove_javascript = True + use_embedded_content = False + no_stylesheets = True + language = 'en' + encoding = 'utf-8' + conversion_options = {'linearize_tables':True} + remove_tags = [ + dict(name='div', attrs={'id':'cxArticleOptions'}), + ] + keep_only_tags = [ + dict(name='div', attrs={'class':'cxArticleHeader'}), + dict(name='div', attrs={'id':'cxArticleBodyText'}), + ] diff --git a/resources/recipes/toi.recipe b/resources/recipes/toi.recipe index ed462ae94f..9539bcade7 100644 --- a/resources/recipes/toi.recipe +++ b/resources/recipes/toi.recipe @@ -1,21 +1,16 @@ from calibre.web.feeds.news import BasicNewsRecipe -from calibre.ebooks.BeautifulSoup import BeautifulSoup class TimesOfIndia(BasicNewsRecipe): title = u'Times of India' language = 'en_IN' - __author__ = 'Krittika Goyal' + __author__ = 'Kovid Goyal' oldest_article = 1 #days max_articles_per_feed = 25 - remove_stylesheets = True + no_stylesheets = True + keep_only_tags = [dict(attrs={'class':'prttabl'})] remove_tags = [ - dict(name='iframe'), - dict(name='td', attrs={'class':'newptool1'}), - dict(name='div', attrs={'id':'newptool'}), - dict(name='ul', attrs={'class':'newtabcontent_tabs_new'}), - dict(name='b', text='Topics'), - dict(name='span', text=':'), + dict(style=lambda x: x and 'float' in x) ] feeds = [ @@ -42,13 +37,8 @@ class TimesOfIndia(BasicNewsRecipe): ('Most Read', 'http://timesofindia.indiatimes.com/rssfeedmostread.cms') ] + def print_version(self, url): + return url + '?prtpage=1' def preprocess_html(self, soup): - heading = soup.find(name='h1', attrs={'class':'heading'}) - td = heading.findParent(name='td') - td.extract() - soup = BeautifulSoup('t') - body = soup.find(name='body') - body.insert(0, td) - td.name = 'div' return soup diff --git a/resources/recipes/winnipeg_sun.recipe b/resources/recipes/winnipeg_sun.recipe new file mode 100644 index 0000000000..fe611b8d5c --- /dev/null +++ b/resources/recipes/winnipeg_sun.recipe @@ -0,0 +1,35 @@ +from calibre.web.feeds.news import BasicNewsRecipe + +class AdvancedUserRecipe1277647803(BasicNewsRecipe): + title = u'Winnipeg Sun' + __author__ = 'rty' + __version__ = '1.0' + oldest_article = 2 + pubisher = 'www.winnipegsun.com' + description = 'Winnipeg Newspaper' + category = 'News, Winnipeg, Canada' + max_articles_per_feed = 100 + no_stylesheets = True + encoding = 'UTF-8' + remove_javascript = True + use_embedded_content = False + language = 'en_CA' + feeds = [ + (u'News', u'http://www.winnipegsun.com/news/rss.xml'), + (u'Columnists', u'http://www.winnipegsun.com/columnists/rss.xml'), + (u'Editorial', u'http://www.winnipegsun.com/comment/editorial/rss.xml'), + (u'Entertainments', u'http://www.winnipegsun.com/entertainment/rss.xml'), + (u'Life', u'http://www.winnipegsun.com/life/rss.xml'), + (u'Money', u'http://www.winnipegsun.com/money/rss.xml') + ] + keep_only_tags = [ + dict(name='div', attrs={'id':'article'}), + ] + remove_tags = [ + dict(name='div', attrs={'class':['leftBox','bottomBox clear']}), + dict(name='ul', attrs={'class':'tabs dl contentSwap'}), + dict(name='div', attrs={'id':'commentsBottom'}), + ] + remove_tags_after = [ + dict(name='div', attrs={'class':'bottomBox clear'}) + ] diff --git a/resources/recipes/zaobao.recipe b/resources/recipes/zaobao.recipe index bce594bafa..91a5459e18 100644 --- a/resources/recipes/zaobao.recipe +++ b/resources/recipes/zaobao.recipe @@ -15,22 +15,22 @@ class ZAOBAO(BasicNewsRecipe): no_stylesheets = True recursions = 1 language = 'zh' - encoding = 'gbk' # multithreaded_fetch = True keep_only_tags = [ - dict(name='table', attrs={'cellpadding':'9'}), - dict(name='table', attrs={'class':'cont'}), - dict(name='div', attrs={'id':'content'}), + dict(name='td', attrs={'class':'text'}), dict(name='span', attrs={'class':'page'}), + dict(name='div', attrs={'id':'content'}) ] remove_tags = [ dict(name='table', attrs={'cellspacing':'9'}), + dict(name='fieldset'), + dict(name='div', attrs={'width':'30%'}), ] - extra_css = '\ + extra_css = '\n\ @font-face {font-family: "serif1";src:url(res:///opt/sony/ebook/FONT/tt0011m_.ttf)}\n\ body{font-family: serif1, serif}\n\ .article_description{font-family: serif1, serif}\n\ @@ -41,7 +41,10 @@ class ZAOBAO(BasicNewsRecipe): .article {font-size:medium}\n\ .navbar {font-size: small}\n\ .feed{font-size: medium}\n\ - .small{font-size: small; padding-right: 8%}\n' + .small{font-size: small;padding-right: 8pt}\n\ + .text{padding-right: 8pt}\n\ + p{text-indent: 0cm}\n\ + div#content{padding-right: 10pt}' INDEXES = [ (u'\u65b0\u95fb\u56fe\u7247', u'http://www.zaobao.com/photoweb/photoweb_idx.shtml') @@ -51,27 +54,35 @@ class ZAOBAO(BasicNewsRecipe): DESC_SENSE = u'\u8054\u5408\u65e9\u62a5\u7f51' feeds = [ - (u'\u5373\u65f6\u62a5\u9053', u'http://realtime.zaobao.com/news.xml'), - (u'\u4e2d\u56fd\u65b0\u95fb', u'http://www.zaobao.com/zg/zg.xml'), - (u'\u56fd\u9645\u65b0\u95fb', u'http://www.zaobao.com/gj/gj.xml'), - (u'\u4e16\u754c\u62a5\u520a\u6587\u8403', u'http://www.zaobao.com/wencui/wencui.xml'), - (u'\u4e1c\u5357\u4e9a\u65b0\u95fb', u'http://www.zaobao.com/yx/yx.xml'), - (u'\u65b0\u52a0\u5761\u65b0\u95fb', u'http://www.zaobao.com/sp/sp.xml'), - (u'\u4eca\u65e5\u89c2\u70b9', u'http://www.zaobao.com/yl/yl.xml'), - (u'\u4e2d\u56fd\u8d22\u7ecf', u'http://www.zaobao.com/cz/cz.xml'), - (u'\u72ee\u57ce\u8d22\u7ecf', u'http://www.zaobao.com/cs/cs.xml'), - (u'\u5168\u7403\u8d22\u7ecf', u'http://www.zaobao.com/cg/cg.xml'), - (u'\u65e9\u62a5\u4f53\u80b2', u'http://www.zaobao.com/ty/ty.xml'), - (u'\u65e9\u62a5\u526f\u520a', u'http://www.zaobao.com/fk/fk.xml'), + (u'\u5373\u65f6\u62a5\u9053', u'http://realtime.zaobao.com/news.xml'), + (u'\u4e2d\u56fd\u65b0\u95fb', u'http://www.zaobao.com/zg/zg.xml'), + (u'\u56fd\u9645\u65b0\u95fb', u'http://www.zaobao.com/gj/gj.xml'), + (u'\u4e16\u754c\u62a5\u520a\u6587\u8403', u'http://www.zaobao.com/wencui/wencui.xml'), + (u'\u4e1c\u5357\u4e9a\u65b0\u95fb', u'http://www.zaobao.com/yx/yx.xml'), + (u'\u65b0\u52a0\u5761\u65b0\u95fb', u'http://www.zaobao.com/sp/sp.xml'), + (u'\u4eca\u65e5\u89c2\u70b9', u'http://www.zaobao.com/yl/yl.xml'), + (u'\u4e2d\u56fd\u8d22\u7ecf', u'http://www.zaobao.com/cz/cz.xml'), + (u'\u72ee\u57ce\u8d22\u7ecf', u'http://www.zaobao.com/cs/cs.xml'), + (u'\u5168\u7403\u8d22\u7ecf', u'http://www.zaobao.com/cg/cg.xml'), + (u'\u65e9\u62a5\u4f53\u80b2', u'http://www.zaobao.com/ty/ty.xml'), + (u'\u65e9\u62a5\u526f\u520a', u'http://www.zaobao.com/fk/fk.xml'), ] + def preprocess_html(self, soup): + for tag in soup.findAll(name='a'): + if tag.has_key('href'): + tag_url = tag['href'] + if tag_url.find('http://') != -1 and tag_url.find('zaobao.com') == -1: + del tag['href'] + return soup + def postprocess_html(self, soup, first): for tag in soup.findAll(name=['table', 'tr', 'td']): tag.name = 'div' return soup def parse_feeds(self): - self.log.debug('ZAOBAO overrided parse_feeds()') + self.log_debug(_('ZAOBAO overrided parse_feeds()')) parsed_feeds = BasicNewsRecipe.parse_feeds(self) for id, obj in enumerate(self.INDEXES): @@ -88,7 +99,7 @@ class ZAOBAO(BasicNewsRecipe): a_title = self.tag_to_string(a) date = '' description = '' - self.log.debug('adding %s at %s'%(a_title,a_url)) + self.log_debug(_('adding %s at %s')%(a_title,a_url)) articles.append({ 'title':a_title, 'date':date, @@ -97,26 +108,25 @@ class ZAOBAO(BasicNewsRecipe): }) pfeeds = feeds_from_index([(title, articles)], oldest_article=self.oldest_article, - max_articles_per_feed=self.max_articles_per_feed, - log=self.log) + max_articles_per_feed=self.max_articles_per_feed) - self.log.debug('adding %s to feed'%(title)) + self.log_debug(_('adding %s to feed')%(title)) for feed in pfeeds: - self.log.debug('adding feed: %s'%(feed.title)) + self.log_debug(_('adding feed: %s')%(feed.title)) feed.description = self.DESC_SENSE parsed_feeds.append(feed) for a, article in enumerate(feed): - self.log.debug('added article %s from %s'%(article.title, article.url)) - self.log.debug('added feed %s'%(feed.title)) + self.log_debug(_('added article %s from %s')%(article.title, article.url)) + self.log_debug(_('added feed %s')%(feed.title)) for i, feed in enumerate(parsed_feeds): # workaorund a strange problem: Somethimes the xml encoding is not apllied correctly by parse() weired_encoding_detected = False if not isinstance(feed.description, unicode) and self.encoding and feed.description: - self.log.debug('Feed %s is not encoded correctly, manually replace it'%(feed.title)) + self.log_debug(_('Feed %s is not encoded correctly, manually replace it')%(feed.title)) feed.description = feed.description.decode(self.encoding, 'replace') elif feed.description.find(self.DESC_SENSE) == -1 and self.encoding and feed.description: - self.log.debug('Feed %s is strangely encoded, manually redo all'%(feed.title)) + self.log_debug(_('Feed %s is weired encoded, manually redo all')%(feed.title)) feed.description = feed.description.encode('cp1252', 'replace').decode(self.encoding, 'replace') weired_encoding_detected = True @@ -138,7 +148,7 @@ class ZAOBAO(BasicNewsRecipe): article.text_summary = article.text_summary.encode('cp1252', 'replace').decode(self.encoding, 'replace') if article.title == "Untitled article": - self.log.debug('Removing empty article %s from %s'%(article.title, article.url)) + self.log_debug(_('Removing empty article %s from %s')%(article.title, article.url)) # remove the article feed.articles[a:a+1] = [] return parsed_feeds diff --git a/resources/templates/html.css b/resources/templates/html.css index 9e80d54f88..e9b683ca34 100644 --- a/resources/templates/html.css +++ b/resources/templates/html.css @@ -406,3 +406,8 @@ img, object, svg|svg { width: auto; height: auto; } + +/* These are needed because ADE renders anchors the same as links */ + +a { text-decoration: inherit; color: inherit; cursor: inherit } +a[href] { text-decoration: underline; color: blue; cursor: pointer } diff --git a/setup/installer/linux/freeze.py b/setup/installer/linux/freeze.py index 7353134393..382c7ffeee 100644 --- a/setup/installer/linux/freeze.py +++ b/setup/installer/linux/freeze.py @@ -40,19 +40,20 @@ class LinuxFreeze(Command): '/usr/bin/pdftohtml', '/usr/lib/libwmflite-0.2.so.7', '/usr/lib/liblcms.so.1', + '/usr/lib/liblcms2.so.2', + '/usr/lib/libstlport.so.5.1', '/tmp/calibre-mount-helper', '/usr/lib/libunrar.so', '/usr/lib/libchm.so.0', '/usr/lib/libsqlite3.so.0', '/usr/lib/libsqlite3.so.0', '/usr/lib/libmng.so.1', - '/usr/lib/libpodofo.so.0.6.99', + '/usr/lib/libpodofo.so.0.8.1', '/lib/libz.so.1', '/lib/libuuid.so.1', - '/usr/lib/libtiff.so.3', + '/usr/lib/libtiff.so.5', '/lib/libbz2.so.1', - '/usr/lib/libpoppler.so.5', - '/usr/lib/libpoppler-qt4.so.3', + '/usr/lib/libpoppler.so.6', '/usr/lib/libxml2.so.2', '/usr/lib/libopenjpeg.so.2', '/usr/lib/libxslt.so.1', @@ -61,10 +62,10 @@ class LinuxFreeze(Command): '/usr/lib/libgthread-2.0.so.0', stdcpp, ffi, - '/usr/lib/libpng12.so.0', + '/usr/lib/libpng14.so.14', '/usr/lib/libexslt.so.0', - '/usr/lib/libMagickWand.so.2', - '/usr/lib/libMagickCore.so.2', + '/usr/lib/libMagickWand.so.3', + '/usr/lib/libMagickCore.so.3', '/usr/lib/libgcrypt.so.11', '/usr/lib/libgpg-error.so.0', '/usr/lib/libphonon.so.4', diff --git a/setup/installer/osx/app/main.py b/setup/installer/osx/app/main.py index 5b01c8503c..c95be6752c 100644 --- a/setup/installer/osx/app/main.py +++ b/setup/installer/osx/app/main.py @@ -265,6 +265,9 @@ class Py2App(object): @flush def get_local_dependencies(self, path_to_lib): for x in self.get_dependencies(path_to_lib): + if x.startswith('libpodofo'): + yield x, x + continue for y in (SW+'/lib/', '/usr/local/lib/', SW+'/qt/lib/', '/opt/local/lib/', '/Library/Frameworks/Python.framework/', SW+'/freetype/lib/'): @@ -397,7 +400,7 @@ class Py2App(object): @flush def add_podofo(self): info('\nAdding PoDoFo') - pdf = join(SW, 'lib', 'libpodofo.0.6.99.dylib') + pdf = join(SW, 'lib', 'libpodofo.0.8.1.dylib') self.install_dylib(pdf) @flush diff --git a/setup/installer/windows/freeze.py b/setup/installer/windows/freeze.py index 0b04cc11cc..29809907ab 100644 --- a/setup/installer/windows/freeze.py +++ b/setup/installer/windows/freeze.py @@ -13,7 +13,7 @@ from setup import Command, modules, functions, basenames, __version__, \ from setup.build_environment import msvc, MT, RC from setup.installer.windows.wix import WixMixIn -QT_DIR = 'C:\\Qt\\4.6.0' +QT_DIR = 'C:\\Qt\\4.6.3' QT_DLLS = ['Core', 'Gui', 'Network', 'Svg', 'WebKit', 'Xml', 'XmlPatterns'] LIBUSB_DIR = 'C:\\libusb' LIBUNRAR = 'C:\\Program Files\\UnrarDLL\\unrar.dll' diff --git a/setup/installer/windows/notes.rst b/setup/installer/windows/notes.rst index 0fdecda27c..cd02c80d2e 100644 --- a/setup/installer/windows/notes.rst +++ b/setup/installer/windows/notes.rst @@ -162,9 +162,50 @@ SET(WANT_LIB64 FALSE) SET(PODOFO_BUILD_SHARED TRUE) SET(PODOFO_BUILD_STATIC FALSE) -cp build/podofo-0.7.0/build/src/Release/podofo.dll bin/ -cp build/podofo-0.7.0/build/src/Release/podofo.lib lib/ -cp build/podofo-0.7.0/build/src/Release/podofo.exp lib/ +cp build/podofo/build/src/Release/podofo.dll bin/ +cp build/podofo/build/src/Release/podofo.lib lib/ +cp build/podofo/build/src/Release/podofo.exp lib/ + +cp build/podofo/build/podofo_config.h include/podofo/ +cp -r build/podofo/src/* include/podofo/ + +The following patch was required to get it to compile: + +Index: src/PdfImage.cpp +=================================================================== +--- src/PdfImage.cpp (revision 1261) ++++ src/PdfImage.cpp (working copy) +@@ -627,7 +627,7 @@ + + long lLen = static_cast(pInfo->rowbytes * height); + char* pBuffer = static_cast(malloc(sizeof(char) * lLen)); +- png_bytep pRows[height]; ++ png_bytepp pRows = static_cast(malloc(sizeof(png_bytep)*height)); + for(int y=0; y(pBuffer + (y * pInfo->rowbytes)); +@@ -672,6 +672,7 @@ + this->SetImageData( width, height, pInfo->bit_depth, &stream ); + + free(pBuffer); ++ free(pRows); + } + #endif // PODOFO_HAVE_PNG_LIB + +Index: src/PdfFiltersPrivate.cpp +=================================================================== +--- src/PdfFiltersPrivate.cpp (revision 1261) ++++ src/PdfFiltersPrivate.cpp (working copy) +@@ -1019,7 +1019,7 @@ + /* + * Prepare for input from a memory buffer. + */ +-GLOBAL(void) ++void + jpeg_memory_src (j_decompress_ptr cinfo, const JOCTET * buffer, size_t bufsize) + { + my_src_ptr src; + ImageMagick -------------- diff --git a/setup/installer/windows/wix-template.xml b/setup/installer/windows/wix-template.xml index 35560f5162..37dd8b25a8 100644 --- a/setup/installer/windows/wix-template.xml +++ b/setup/installer/windows/wix-template.xml @@ -154,6 +154,10 @@ + + + + diff --git a/src/calibre/__init__.py b/src/calibre/__init__.py index 48f2c0ecec..92ee2ca6d2 100644 --- a/src/calibre/__init__.py +++ b/src/calibre/__init__.py @@ -30,6 +30,7 @@ mimetypes.add_type('application/epub+zip', '.epub') mimetypes.add_type('text/x-sony-bbeb+xml', '.lrs') mimetypes.add_type('application/xhtml+xml', '.xhtml') mimetypes.add_type('image/svg+xml', '.svg') +mimetypes.add_type('text/fb2+xml', '.fb2') mimetypes.add_type('application/x-sony-bbeb', '.lrf') mimetypes.add_type('application/x-sony-bbeb', '.lrx') mimetypes.add_type('application/x-dtbncx+xml', '.ncx') @@ -43,6 +44,7 @@ mimetypes.add_type('application/x-mobipocket-ebook', '.prc') mimetypes.add_type('application/x-mobipocket-ebook', '.azw') mimetypes.add_type('application/x-cbz', '.cbz') mimetypes.add_type('application/x-cbr', '.cbr') +mimetypes.add_type('application/x-koboreader-ebook', '.kobo') mimetypes.add_type('image/wmf', '.wmf') guess_type = mimetypes.guess_type import cssutils @@ -340,13 +342,6 @@ def detect_ncpus(): return ans -def launch(path_or_url): - from PyQt4.QtCore import QUrl - from PyQt4.QtGui import QDesktopServices - if os.path.exists(path_or_url): - path_or_url = 'file:'+path_or_url - QDesktopServices.openUrl(QUrl(path_or_url)) - relpath = os.path.relpath _spat = re.compile(r'^the\s+|^a\s+|^an\s+', re.IGNORECASE) def english_sort(x, y): diff --git a/src/calibre/constants.py b/src/calibre/constants.py index 0cc188503f..540f376ffa 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.7.4' +__version__ = '0.7.8' __author__ = "Kovid Goyal " import re diff --git a/src/calibre/customize/builtins.py b/src/calibre/customize/builtins.py index 93344f4616..9d876b42d1 100644 --- a/src/calibre/customize/builtins.py +++ b/src/calibre/customize/builtins.py @@ -9,6 +9,7 @@ from calibre.customize import FileTypePlugin, MetadataReaderPlugin, MetadataWrit from calibre.constants import numeric_version from calibre.ebooks.metadata.archive import ArchiveExtract, get_cbz_metadata +# To archive plugins {{{ class HTML2ZIP(FileTypePlugin): name = 'HTML to ZIP' author = 'Kovid Goyal' @@ -30,6 +31,7 @@ every time you add an HTML file to the library.\ with TemporaryDirectory('_plugin_html2zip') as tdir: recs =[('debug_pipeline', tdir, OptionRecommendation.HIGH)] + recs.append(['keep_ligatures', True, OptionRecommendation.HIGH]) if self.site_customization and self.site_customization.strip(): recs.append(['input_encoding', self.site_customization.strip(), OptionRecommendation.HIGH]) @@ -81,7 +83,9 @@ class PML2PMLZ(FileTypePlugin): return of.name +# }}} +# Metadata reader plugins {{{ class ComicMetadataReader(MetadataReaderPlugin): name = 'Read comic metadata' @@ -319,7 +323,9 @@ class ZipMetadataReader(MetadataReaderPlugin): def get_metadata(self, stream, ftype): from calibre.ebooks.metadata.zip import get_metadata return get_metadata(stream) +# }}} +# Metadata writer plugins {{{ class EPUBMetadataWriter(MetadataWriterPlugin): @@ -395,6 +401,7 @@ class TOPAZMetadataWriter(MetadataWriterPlugin): from calibre.ebooks.metadata.topaz import set_metadata set_metadata(stream, mi) +# }}} from calibre.ebooks.comic.input import ComicInput from calibre.ebooks.epub.input import EPUBInput @@ -436,7 +443,7 @@ from calibre.devices.blackberry.driver import BLACKBERRY from calibre.devices.cybook.driver import CYBOOK from calibre.devices.eb600.driver import EB600, COOL_ER, SHINEBOOK, \ POCKETBOOK360, GER2, ITALICA, ECLICTO, DBOOK, INVESBOOK, \ - BOOQ, ELONEX, POCKETBOOK301 + BOOQ, ELONEX, POCKETBOOK301, MENTOR from calibre.devices.iliad.driver import ILIAD from calibre.devices.irexdr.driver import IREXDR1000, IREXDR800 from calibre.devices.jetbook.driver import JETBOOK @@ -444,7 +451,7 @@ from calibre.devices.kindle.driver import KINDLE, KINDLE2, KINDLE_DX from calibre.devices.nook.driver import NOOK from calibre.devices.prs505.driver import PRS505 from calibre.devices.android.driver import ANDROID, S60 -from calibre.devices.nokia.driver import N770, N810, E71X +from calibre.devices.nokia.driver import N770, N810, E71X, E52 from calibre.devices.eslick.driver import ESLICK, EBK52 from calibre.devices.nuut2.driver import NUUT2 from calibre.devices.iriver.driver import IRIVER_STORY @@ -453,7 +460,7 @@ from calibre.devices.hanvon.driver import N516, EB511, ALEX, AZBOOKA, THEBOOK from calibre.devices.edge.driver import EDGE from calibre.devices.teclast.driver import TECLAST_K3, NEWSMY, IPAPYRUS from calibre.devices.sne.driver import SNE -from calibre.devices.misc import PALMPRE, AVANT +from calibre.devices.misc import PALMPRE, AVANT, SWEEX, PDNOVEL from calibre.devices.folder_device.driver import FOLDER_DEVICE_FOR_CONFIG from calibre.devices.kobo.driver import KOBO @@ -461,8 +468,11 @@ from calibre.ebooks.metadata.fetch import GoogleBooks, ISBNDB, Amazon, \ LibraryThing from calibre.ebooks.metadata.douban import DoubanBooks from calibre.library.catalog import CSV_XML, EPUB_MOBI +from calibre.ebooks.epub.fix.unmanifested import Unmanifested +from calibre.ebooks.epub.fix.epubcheck import Epubcheck + plugins = [HTML2ZIP, PML2PMLZ, ArchiveExtract, GoogleBooks, ISBNDB, Amazon, - LibraryThing, DoubanBooks, CSV_XML, EPUB_MOBI] + LibraryThing, DoubanBooks, CSV_XML, EPUB_MOBI, Unmanifested, Epubcheck] plugins += [ ComicInput, EPUBInput, @@ -499,7 +509,6 @@ plugins += [ ] # Order here matters. The first matched device is the one used. plugins += [ - ITUNES, HANLINV3, HANLINV5, BLACKBERRY, @@ -520,6 +529,7 @@ plugins += [ S60, N770, E71X, + E52, N810, COOL_ER, ESLICK, @@ -550,6 +560,10 @@ plugins += [ AZBOOKA, FOLDER_DEVICE_FOR_CONFIG, AVANT, + MENTOR, + SWEEX, + PDNOVEL, + ITUNES, ] plugins += [x for x in list(locals().values()) if isinstance(x, type) and \ x.__name__.endswith('MetadataReader')] diff --git a/src/calibre/customize/profiles.py b/src/calibre/customize/profiles.py index c872c9df38..0db3ce6a15 100644 --- a/src/calibre/customize/profiles.py +++ b/src/calibre/customize/profiles.py @@ -36,7 +36,7 @@ class Plugin(_Plugin): self.fnames = dict((name, sz) for name, _, sz in self.fsizes if name) self.fnums = dict((num, sz) for _, num, sz in self.fsizes if num) - +# Input profiles {{{ class InputProfile(Plugin): author = 'Kovid Goyal' @@ -218,6 +218,8 @@ input_profiles = [InputProfile, SonyReaderInput, SonyReader300Input, input_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower())) +# }}} + class OutputProfile(Plugin): author = 'Kovid Goyal' @@ -237,11 +239,12 @@ class OutputProfile(Plugin): # If True the MOBI renderer on the device supports MOBI indexing supports_mobi_indexing = False - # Device supports displaying a nested TOC - supports_nested_toc = True - # If True output should be optimized for a touchscreen interface touchscreen = False + touchscreen_news_css = '' + # A list of extra (beyond CSS 2.1) modules supported by the device + # Format is a cssutils profile dictionary (see iPad for example) + extra_css_modules = [] @classmethod def tags_to_string(cls, tags): @@ -256,8 +259,151 @@ class iPadOutput(OutputProfile): screen_size = (768, 1024) comic_screen_size = (768, 1024) dpi = 132.0 - supports_nested_toc = False + extra_css_modules = [ + { + 'name':'webkit', + 'props': { '-webkit-border-bottom-left-radius':'{length}', + '-webkit-border-bottom-right-radius':'{length}', + '-webkit-border-top-left-radius':'{length}', + '-webkit-border-top-right-radius':'{length}', + '-webkit-border-radius': r'{border-width}(\s+{border-width}){0,3}|inherit', + }, + 'macros': {'border-width': '{length}|medium|thick|thin'} + } + ] touchscreen = True + # touchscreen_news_css {{{ + touchscreen_news_css = u''' + /* hr used in articles */ + .article_articles_list { + width:18%; + } + .article_link { + color: #593f29; + font-style: italic; + } + .article_next { + -webkit-border-top-right-radius:4px; + -webkit-border-bottom-right-radius:4px; + font-style: italic; + width:32%; + } + + .article_prev { + -webkit-border-top-left-radius:4px; + -webkit-border-bottom-left-radius:4px; + font-style: italic; + width:32%; + } + .article_sections_list { + width:18%; + } + .articles_link { + font-weight: bold; + } + .sections_link { + font-weight: bold; + } + + + .caption_divider { + border:#ccc 1px solid; + } + + .touchscreen_navbar { + background:#c3bab2; + border:#ccc 0px solid; + border-collapse:separate; + border-spacing:1px; + margin-left: 5%; + margin-right: 5%; + width: 90%; + -webkit-border-radius:4px; + } + .touchscreen_navbar td { + background:#fff; + font-family:Helvetica; + font-size:80%; + /* UI touchboxes use 8px padding */ + padding: 6px; + text-align:center; + } + + .touchscreen_navbar td a:link { + color: #593f29; + text-decoration: none; + } + + /* Index formatting */ + .publish_date { + text-align:center; + } + .divider { + border-bottom:1em solid white; + border-top:1px solid gray; + } + + hr.caption_divider { + border-color:black; + border-style:solid; + border-width:1px; + } + + /* Feed summary formatting */ + .article_summary { + display:inline-block; + } + .feed { + font-family:sans-serif; + font-weight:bold; + font-size:larger; + } + + .feed_link { + font-style: italic; + } + + .feed_next { + -webkit-border-top-right-radius:4px; + -webkit-border-bottom-right-radius:4px; + font-style: italic; + width:40%; + } + + .feed_prev { + -webkit-border-top-left-radius:4px; + -webkit-border-bottom-left-radius:4px; + font-style: italic; + width:40%; + } + + .feed_title { + text-align: center; + font-size: 160%; + } + + .feed_up { + font-weight: bold; + width:20%; + } + + .summary_headline { + font-weight:bold; + text-align:left; + } + + .summary_byline { + text-align:left; + font-family:monospace; + } + + .summary_text { + text-align:left; + } + + ''' + # }}} + class SonyReaderOutput(OutputProfile): diff --git a/src/calibre/customize/ui.py b/src/calibre/customize/ui.py index 8397827fbb..31f4c69c0f 100644 --- a/src/calibre/customize/ui.py +++ b/src/calibre/customize/ui.py @@ -16,6 +16,7 @@ from calibre.ebooks.metadata import MetaInformation from calibre.ebooks.metadata.fetch import MetadataSource from calibre.utils.config import make_config_dir, Config, ConfigProxy, \ plugin_dir, OptionParser, prefs +from calibre.ebooks.epub.fix import ePubFixer platform = 'linux' @@ -151,13 +152,13 @@ def reread_filetype_plugins(): def _run_filetype_plugins(path_to_file, ft=None, occasion='preprocess'): - occasion = {'import':_on_import, 'preprocess':_on_preprocess, + occasion_plugins = {'import':_on_import, 'preprocess':_on_preprocess, 'postprocess':_on_postprocess}[occasion] customization = config['plugin_customization'] if ft is None: ft = os.path.splitext(path_to_file)[-1].lower().replace('.', '') nfp = path_to_file - for plugin in occasion.get(ft, []): + for plugin in occasion_plugins.get(ft, []): if is_disabled(plugin): continue plugin.site_customization = customization.get(plugin.name, '') @@ -194,7 +195,6 @@ def plugin_customization(plugin): # }}} - # Input/Output profiles {{{ def input_profiles(): for plugin in _initialized_plugins: @@ -444,6 +444,14 @@ def device_plugins(): # {{{ yield plugin # }}} +# epub fixers {{{ +def epub_fixers(): + for plugin in _initialized_plugins: + if isinstance(plugin, ePubFixer): + if not is_disabled(plugin): + if platform in plugin.supported_platforms: + yield plugin +# }}} # Initialize plugins {{{ diff --git a/src/calibre/devices/android/driver.py b/src/calibre/devices/android/driver.py index 0bbdf0f22c..9951dc57ad 100644 --- a/src/calibre/devices/android/driver.py +++ b/src/calibre/devices/android/driver.py @@ -34,6 +34,12 @@ class ANDROID(USBMS): # Acer 0x502 : { 0x3203 : [0x0100]}, + + # Dell + 0x413c : { 0xb007 : [0x0100]}, + + # Eken? + 0x040d : { 0x0851 : [0x0001]}, } EBOOK_DIR_MAIN = ['wordplayer/calibretransfer', 'eBooks/import', 'Books'] EXTRA_CUSTOMIZATION_MESSAGE = _('Comma separated list of directories to ' @@ -42,11 +48,12 @@ class ANDROID(USBMS): EXTRA_CUSTOMIZATION_DEFAULT = ', '.join(EBOOK_DIR_MAIN) VENDOR_NAME = ['HTC', 'MOTOROLA', 'GOOGLE_', 'ANDROID', 'ACER', - 'GT-I5700', 'SAMSUNG'] + 'GT-I5700', 'SAMSUNG', 'DELL', 'LINUX'] WINDOWS_MAIN_MEM = ['ANDROID_PHONE', 'A855', 'A853', 'INC.NEXUS_ONE', '__UMS_COMPOSITE', '_MB200', 'MASS_STORAGE', '_-_CARD', - 'PROD_GT-I9000'] - WINDOWS_CARD_A_MEM = ['ANDROID_PHONE', 'PROD_GT-I9000_CARD'] + 'GT-I9000', 'FILE-STOR_GADGET'] + WINDOWS_CARD_A_MEM = ['ANDROID_PHONE', 'GT-I9000_CARD', + 'FILE-STOR_GADGET'] OSX_MAIN_MEM = 'HTC Android Phone Media' @@ -63,6 +70,16 @@ class ANDROID(USBMS): dirs = [x.strip() for x in dirs.split(',')] self.EBOOK_DIR_MAIN = dirs + def get_main_ebook_dir(self, for_upload=False): + dirs = self.EBOOK_DIR_MAIN + if not for_upload: + def aldiko_tweak(x): + return 'eBooks' if x == 'eBooks/import' else x + if isinstance(dirs, basestring): + dirs = [dirs] + dirs = list(map(aldiko_tweak, dirs)) + return dirs + class S60(USBMS): name = 'S60 driver' diff --git a/src/calibre/devices/apple/driver.py b/src/calibre/devices/apple/driver.py index a994efb0f6..618fc27545 100644 --- a/src/calibre/devices/apple/driver.py +++ b/src/calibre/devices/apple/driver.py @@ -10,13 +10,15 @@ from calibre.constants import __appname__, __version__, DEBUG from calibre import fit_image from calibre.constants import isosx, iswindows from calibre.devices.errors import UserFeedback +from calibre.devices.usbms.deviceconfig import DeviceConfig from calibre.devices.interface import DevicePlugin from calibre.ebooks.BeautifulSoup import BeautifulSoup -from calibre.ebooks.metadata import MetaInformation +from calibre.ebooks.metadata import MetaInformation, authors_to_string from calibre.ebooks.metadata.epub import set_metadata from calibre.library.server.utils import strftime -from calibre.utils.config import Config, config_dir +from calibre.utils.config import config_dir from calibre.utils.date import isoformat, now, parse_date +from calibre.utils.localization import get_lang from calibre.utils.logging import Log from calibre.utils.zipfile import ZipFile @@ -33,8 +35,16 @@ if isosx: if iswindows: import pythoncom, win32com.client +class DriverBase(DeviceConfig, DevicePlugin): + # Needed for config_widget to work + FORMATS = ['epub', 'pdf'] + SUPPORTS_SUB_DIRS = True # To enable second checkbox in customize widget -class ITUNES(DevicePlugin): + @classmethod + def _config_base_name(cls): + return 'iTunes' + +class ITUNES(DriverBase): ''' Calling sequences: Initialization: @@ -74,76 +84,86 @@ class ITUNES(DevicePlugin): name = 'Apple device interface' gui_name = 'Apple device' icon = I('devices/ipad.png') - description = _('Communicate with iBooks through iTunes.') + description = _('Communicate with iTunes/iBooks.') supported_platforms = ['osx','windows'] author = 'GRiker' #: The version of this plugin as a 3-tuple (major, minor, revision) - version = (0,7,0) + version = (0,9,0) OPEN_FEEDBACK_MESSAGE = _( 'Apple device detected, launching iTunes, please wait ...') - FORMATS = ['epub'] - # Product IDs: - # 0x1292:iPhone 3G - # 0x129a:iPad + # 0x1291 iPod Touch + # 0x1292 iPhone 3G + # 0x1293 iPod Touch 2G + # 0x1294 iPhone 3GS + # 0x1297 iPhone 4 + # 0x1299 iPod Touch 3G + # 0x129a iPad VENDOR_ID = [0x05ac] - PRODUCT_ID = [0x129a] + PRODUCT_ID = [0x1292,0x1293,0x1294,0x1297,0x1299,0x129a] BCD = [0x01] # iTunes enumerations - Sources = [ - 'Unknown', - 'Library', - 'iPod', - 'AudioCD', - 'MP3CD', - 'Device', - 'RadioTuner', - 'SharedLibrary'] - + Audiobooks = [ + 'Audible file', + 'MPEG audio file', + 'Protected AAC audio file' + ] ArtworkFormat = [ - 'Unknown', - 'JPEG', - 'PNG', - 'BMP' - ] - + 'Unknown', + 'JPEG', + 'PNG', + 'BMP' + ] PlaylistKind = [ - 'Unknown', - 'Library', - 'User', - 'CD', - 'Device', - 'Radio Tuner' - ] - + 'Unknown', + 'Library', + 'User', + 'CD', + 'Device', + 'Radio Tuner' + ] PlaylistSpecialKind = [ - 'Unknown', - 'Purchased Music', - 'Party Shuffle', - 'Podcasts', - 'Folder', - 'Video', - 'Music', - 'Movies', - 'TV Shows', - 'Books', - ] - + 'Unknown', + 'Purchased Music', + 'Party Shuffle', + 'Podcasts', + 'Folder', + 'Video', + 'Music', + 'Movies', + 'TV Shows', + 'Books', + ] SearchField = [ - 'All', - 'Visible', - 'Artists', - 'Albums', - 'Composers', - 'SongNames', - ] + 'All', + 'Visible', + 'Artists', + 'Albums', + 'Composers', + 'SongNames', + ] + Sources = [ + 'Unknown', + 'Library', + 'iPod', + 'AudioCD', + 'MP3CD', + 'Device', + 'RadioTuner', + 'SharedLibrary' + ] + + # Cover art size limits + MAX_COVER_WIDTH = 510 + MAX_COVER_HEIGHT = 680 # Properties cached_books = {} cache_dir = os.path.join(config_dir, 'caches', 'itunes') + archive_path = os.path.join(cache_dir, "thumbs.zip") description_prefix = "added by calibre" ejected = False iTunes= None @@ -151,7 +171,7 @@ class ITUNES(DevicePlugin): library_orphans = None log = Log() manual_sync_mode = False - path_template = 'iTunes/%s - %s.epub' + path_template = 'iTunes/%s - %s.%s' problem_titles = [] problem_msg = None report_progress = None @@ -159,7 +179,6 @@ class ITUNES(DevicePlugin): sources = None update_msg = None update_needed = False - use_series_data = True # Public methods def add_books_to_metadata(self, locations, metadata, booklists): @@ -173,16 +192,17 @@ class ITUNES(DevicePlugin): (L{books}(oncard=None), L{books}(oncard='carda'), L{books}(oncard='cardb')). ''' + if DEBUG: + self.log.info("ITUNES.add_books_to_metadata()") task_count = float(len(self.update_list)) # Delete any obsolete copies of the book from the booklist if self.update_list: - if True: - self.log.info("ITUNES.add_books_to_metadata()") - #self._dump_booklist(booklists[0], header='before',indent=2) - #self._dump_update_list(header='before',indent=2) - #self._dump_cached_books(header='before',indent=2) + if False: + self._dump_booklist(booklists[0], header='before',indent=2) + self._dump_update_list(header='before',indent=2) + self._dump_cached_books(header='before',indent=2) for (j,p_book) in enumerate(self.update_list): if False: @@ -230,7 +250,7 @@ class ITUNES(DevicePlugin): # Add new books to booklists[0] for new_book in locations[0]: - if False: + if DEBUG: self.log.info(" adding '%s' by '%s' to booklists[0]" % (new_book.title, new_book.author)) booklists[0].append(new_book) @@ -256,11 +276,13 @@ class ITUNES(DevicePlugin): """ if not oncard: if DEBUG: - self.log.info("ITUNES:books(oncard=%s)" % oncard) + self.log.info("ITUNES:books():") + if self.settings().use_subdirs: + self.log.info(" Cover fetching/caching enabled") + else: + self.log.info(" Cover fetching/caching disabled") # Fetch a list of books from iPod device connected to iTunes - - if 'iPod' in self.sources: booklist = BookList(self.log) cached_books = {} @@ -271,11 +293,12 @@ class ITUNES(DevicePlugin): book_count = float(len(device_books)) for (i,book) in enumerate(device_books): this_book = Book(book.name(), book.artist()) - this_book.path = self.path_template % (book.name(), book.artist()) + format = 'pdf' if book.kind().startswith('PDF') else 'epub' + this_book.path = self.path_template % (book.name(), book.artist(),format) try: this_book.datetime = parse_date(str(book.date_added())).timetuple() except: - pass + this_book.datetime = time.gmtime() this_book.db_id = None this_book.device_collections = [] this_book.library_id = library_books[this_book.path] if this_book.path in library_books else None @@ -309,11 +332,12 @@ class ITUNES(DevicePlugin): book_count = float(len(device_books)) for (i,book) in enumerate(device_books): this_book = Book(book.Name, book.Artist) - this_book.path = self.path_template % (book.Name, book.Artist) + format = 'pdf' if book.KindAsString.startswith('PDF') else 'epub' + this_book.path = self.path_template % (book.Name, book.Artist,format) try: this_book.datetime = parse_date(str(book.DateAdded)).timetuple() except: - pass + this_book.datetime = time.gmtime() this_book.db_id = None this_book.device_collections = [] this_book.library_id = library_books[this_book.path] if this_book.path in library_books else None @@ -329,7 +353,8 @@ class ITUNES(DevicePlugin): 'title':book.Name, 'author':book.Artist, 'lib_book':library_books[this_book.path] if this_book.path in library_books else None, - 'uuid': book.Composer + 'uuid': book.Composer, + 'format': 'pdf' if book.KindAsString.startswith('PDF') else 'epub' } if self.report_progress is not None: @@ -343,12 +368,12 @@ class ITUNES(DevicePlugin): if self.report_progress is not None: self.report_progress(1.0, _('finished')) self.cached_books = cached_books -# if DEBUG: -# self._dump_booklist(booklist, 'returning from books():') -# self._dump_cached_books('returning from books():') + if DEBUG: + self._dump_booklist(booklist, 'returning from books()', indent=2) + self._dump_cached_books('returning from books()',indent=2) return booklist else: - return [] + return BookList(self.log) def can_handle(self, device_info, debug=False): ''' @@ -359,7 +384,7 @@ class ITUNES(DevicePlugin): Confirm that: - iTunes is running - - there is an iPod-type device connected + - there is an iDevice connected This gets called first when the device fingerprint is read, so it needs to instantiate iTunes if necessary This gets called ~1x/second while device fingerprint is sensed @@ -506,6 +531,21 @@ class ITUNES(DevicePlugin): ''' return (None,None) + @classmethod + def config_widget(cls): + ''' + Return a QWidget with settings for the device interface + ''' + cw = DriverBase.config_widget() + # Turn off the Save template + cw.opt_save_template.setVisible(False) + cw.label.setVisible(False) + # Repurpose the metadata checkbox + cw.opt_read_metadata.setText(_("Use Series as Category in iTunes/iBooks")) + # Repurpose the use_subdirs checkbox + cw.opt_use_subdirs.setText(_("Cache covers from iTunes/iBooks")) + return cw + def delete_books(self, paths, end_session=True): ''' Delete books at paths on device. @@ -661,21 +701,19 @@ class ITUNES(DevicePlugin): self.log.info("ITUNES.open()") # Confirm/create thumbs archive - archive_path = os.path.join(self.cache_dir, "thumbs.zip") - if not os.path.exists(self.cache_dir): if DEBUG: self.log.info(" creating thumb cache '%s'" % self.cache_dir) os.makedirs(self.cache_dir) - if not os.path.exists(archive_path): + if not os.path.exists(self.archive_path): self.log.info(" creating zip archive") - zfw = ZipFile(archive_path, mode='w') + zfw = ZipFile(self.archive_path, mode='w') zfw.writestr("iTunes Thumbs Archive",'') zfw.close() else: if DEBUG: - self.log.info(" existing thumb cache at '%s'" % archive_path) + self.log.info(" existing thumb cache at '%s'" % self.archive_path) def remove_books_from_metadata(self, paths, booklists): ''' @@ -685,25 +723,68 @@ class ITUNES(DevicePlugin): @param booklists: A tuple containing the result of calls to (L{books}(oncard=None), L{books}(oncard='carda'), L{books}(oncard='cardb')). + + NB: This will not find books that were added by a different installation of calibre + as uuids are different ''' if DEBUG: self.log.info("ITUNES.remove_books_from_metadata()") for path in paths: - self._dump_cached_book(self.cached_books[path], indent=2) + if DEBUG: + self._dump_cached_book(self.cached_books[path], indent=2) + self.log.info(" looking for '%s' by '%s' (%s)" % + (self.cached_books[path]['title'], + self.cached_books[path]['author'], + self.cached_books[path]['uuid'])) - # Purge the booklist, self.cached_books + # Purge the booklist, self.cached_books, thumb cache for i,bl_book in enumerate(booklists[0]): if False: - self.log.info(" evaluating '%s'" % bl_book.uuid) - if bl_book.uuid == self.cached_books[path]['uuid']: - # Remove from booklists[0] - booklists[0].pop(i) + self.log.info(" evaluating '%s' by '%s' (%s)" % + (bl_book.title, bl_book.author,bl_book.uuid)) + found = False + if bl_book.uuid == self.cached_books[path]['uuid']: + if False: + self.log.info(" matched with uuid") + booklists[0].pop(i) + found = True + elif bl_book.title == self.cached_books[path]['title'] and \ + bl_book.author[0] == self.cached_books[path]['author']: + if False: + self.log.info(" matched with title + author") + booklists[0].pop(i) + found = True + + if found: + # Remove from self.cached_books for cb in self.cached_books: if self.cached_books[cb]['uuid'] == self.cached_books[path]['uuid']: self.cached_books.pop(cb) break + + # Remove from thumb from thumb cache + thumb_path = path.rpartition('.')[0] + '.jpg' + zf = ZipFile(self.archive_path,'a') + fnames = zf.namelist() + try: + thumb = [x for x in fnames if thumb_path in x][0] + except: + thumb = None + if thumb: + if DEBUG: + self.log.info(" deleting '%s' from cover cache" % (thumb_path)) + zf.delete(thumb_path) + else: + if DEBUG: + self.log.info(" '%s' not found in cover cache" % thumb_path) + zf.close() + break +# else: +# if DEBUG: +# self.log.error(" unable to find '%s' by '%s' (%s)" % +# (bl_book.title, bl_book.author,bl_book.uuid)) if False: self._dump_booklist(booklists[0], indent = 2) @@ -732,17 +813,6 @@ class ITUNES(DevicePlugin): ''' self.report_progress = report_progress - def settings(self): - ''' - Should return an opts object. The opts object should have one attribute - `format_map` which is an ordered list of formats for the device. - ''' - klass = self if isinstance(self, type) else self.__class__ - c = Config('device_drivers_%s' % klass.__name__, _('settings for device drivers')) - c.add_opt('format_map', default=self.FORMATS, - help=_('Ordered list of formats the device will accept')) - return c.parse() - def sync_booklists(self, booklists, end_session=True): ''' Update metadata on device. @@ -750,6 +820,10 @@ class ITUNES(DevicePlugin): (L{books}(oncard=None), L{books}(oncard='carda'), L{books}(oncard='cardb')). ''' + + if DEBUG: + self.log.info("ITUNES.sync_booklists()") + if self.update_needed: if DEBUG: self.log.info(' calling _update_device') @@ -812,29 +886,35 @@ class ITUNES(DevicePlugin): self.problem_msg = _("Some cover art could not be converted.\n" "Click 'Show Details' for a list.") - if False: + if DEBUG: self.log.info("ITUNES.upload_books()") self._dump_files(files, header='upload_books()',indent=2) self._dump_update_list(header='upload_books()',indent=2) if isosx: for (i,file) in enumerate(files): - path = self.path_template % (metadata[i].title, metadata[i].author[0]) + format = file.rpartition('.')[2].lower() + path = self.path_template % (metadata[i].title, metadata[i].author[0],format) self._remove_existing_copy(path, metadata[i]) - fpath = self._get_fpath(file, metadata[i], update_md=True) + fpath = self._get_fpath(file, metadata[i], format, update_md=True) db_added, lb_added = self._add_new_copy(fpath, metadata[i]) - thumb = self._cover_to_thumb(path, metadata[i], db_added, lb_added) - this_book = self._create_new_book(fpath, metadata[i], path, db_added, lb_added, thumb) + thumb = self._cover_to_thumb(path, metadata[i], db_added, lb_added, format) + this_book = self._create_new_book(fpath, metadata[i], path, db_added, lb_added, thumb, format) new_booklist.append(this_book) self._update_iTunes_metadata(metadata[i], db_added, lb_added, this_book) - # Add new_book to self.cached_paths + # Add new_book to self.cached_books + if DEBUG: + self.log.info(" adding '%s' by '%s' ['%s'] to self.cached_books" % + ( metadata[i].title, metadata[i].author, metadata[i].uuid)) self.cached_books[this_book.path] = { - 'title': metadata[i].title, 'author': metadata[i].author, - 'lib_book': lb_added, 'dev_book': db_added, - 'uuid': metadata[i].uuid} + 'format': format, + 'lib_book': lb_added, + 'title': metadata[i].title, + 'uuid': metadata[i].uuid } + # Report progress if self.report_progress is not None: @@ -846,9 +926,10 @@ class ITUNES(DevicePlugin): self.iTunes = win32com.client.Dispatch("iTunes.Application") for (i,file) in enumerate(files): - path = self.path_template % (metadata[i].title, metadata[i].author[0]) + format = file.rpartition('.')[2].lower() + path = self.path_template % (metadata[i].title, metadata[i].author[0],format) self._remove_existing_copy(path, metadata[i]) - fpath = self._get_fpath(file, metadata[i], update_md=True) + fpath = self._get_fpath(file, metadata[i],format, update_md=True) db_added, lb_added = self._add_new_copy(fpath, metadata[i]) if self.manual_sync_mode and not db_added: @@ -857,17 +938,18 @@ class ITUNES(DevicePlugin): "Click 'Show Details...' for affected books.") self.problem_titles.append("'%s' by %s" % (metadata[i].title, metadata[i].author[0])) - thumb = self._cover_to_thumb(path, metadata[i], lb_added, db_added) - this_book = self._create_new_book(fpath, metadata[i], path, db_added, lb_added, thumb) + thumb = self._cover_to_thumb(path, metadata[i], db_added, lb_added, format) + this_book = self._create_new_book(fpath, metadata[i], path, db_added, lb_added, thumb, format) new_booklist.append(this_book) self._update_iTunes_metadata(metadata[i], db_added, lb_added, this_book) # Add new_book to self.cached_paths self.cached_books[this_book.path] = { - 'title': metadata[i].title, 'author': metadata[i].author[0], - 'lib_book': lb_added, 'dev_book': db_added, + 'format': format, + 'lib_book': lb_added, + 'title': metadata[i].title, 'uuid': metadata[i].uuid} # Report progress @@ -968,7 +1050,8 @@ class ITUNES(DevicePlugin): db_added = self._find_device_book( {'title': metadata.title, 'author': metadata.authors[0], - 'uuid': metadata.uuid}) + 'uuid': metadata.uuid, + 'format': fpath.rpartition('.')[2].lower()}) return db_added @@ -1021,7 +1104,8 @@ class ITUNES(DevicePlugin): added = self._find_library_book( { 'title': metadata.title, 'author': metadata.author[0], - 'uuid': metadata.uuid}) + 'uuid': metadata.uuid, + 'format': file.rpartition('.')[2].lower()}) return added def _add_new_copy(self, fpath, metadata): @@ -1047,46 +1131,82 @@ class ITUNES(DevicePlugin): return db_added, lb_added - def _cover_to_thumb(self, path, metadata, db_added, lb_added): + def _cover_to_thumb(self, path, metadata, db_added, lb_added, format): ''' assumes pythoncom wrapper for db_added + as of iTunes 9.2, iBooks 1.1, can't set artwork for PDF files via automation ''' self.log.info(" ITUNES._cover_to_thumb()") + thumb = None if metadata.cover: - if isosx: - cover_data = open(metadata.cover,'rb') - if lb_added: - lb_added.artworks[1].data_.set(cover_data.read()) - if db_added: - # The following command generates an error, but the artwork does in fact - # get sent to the device. Seems like a bug in Apple's automation interface - try: - db_added.artworks[1].data_.set(cover_data.read()) - except: + if format == 'epub': + # Pre-shrink cover + # self.MAX_COVER_WIDTH, self.MAX_COVER_HEIGHT + try: + img = PILImage.open(metadata.cover) + width = img.size[0] + height = img.size[1] + scaled, nwidth, nheight = fit_image(width, height, self.MAX_COVER_WIDTH, self.MAX_COVER_HEIGHT) + if scaled: if DEBUG: - self.log.warning(" iTunes automation interface reported an error" - " when adding artwork to '%s' on the iDevice" % metadata.title) - #import traceback - #traceback.print_exc() - #from calibre import ipython - #ipython(user_ns=locals()) - pass - - - elif iswindows: - if lb_added: - if lb_added.Artwork.Count: - lb_added.Artwork.Item(1).SetArtworkFromFile(metadata.cover) + self.log.info(" '%s' scaled from %sx%s to %sx%s" % + (metadata.cover,width,height,nwidth,nheight)) + img = img.resize((nwidth, nheight), PILImage.ANTIALIAS) + cd = cStringIO.StringIO() + img.convert('RGB').save(cd, 'JPEG') + cover_data = cd.getvalue() + cd.close() else: - lb_added.AddArtworkFromFile(metadata.cover) + with open(metadata.cover,'r+b') as cd: + cover_data = cd.read() + except: + self.problem_titles.append("'%s' by %s" % (metadata.title, metadata.author[0])) + self.log.error(" error scaling '%s' for '%s'" % (metadata.cover,metadata.title)) + return thumb - if db_added: - if db_added.Artwork.Count: - db_added.Artwork.Item(1).SetArtworkFromFile(metadata.cover) - else: - db_added.AddArtworkFromFile(metadata.cover) + if isosx: + if lb_added: + lb_added.artworks[1].data_.set(cover_data) + + if db_added: + # The following command generates an error, but the artwork does in fact + # get sent to the device. Seems like a bug in Apple's automation interface + try: + db_added.artworks[1].data_.set(cover_data) + except: + if DEBUG: + self.log.warning(" iTunes automation interface reported an error" + " when adding artwork to '%s' on the iDevice" % metadata.title) + #import traceback + #traceback.print_exc() + #from calibre import ipython + #ipython(user_ns=locals()) + pass + + + elif iswindows: + # Write the data to a real file for Windows iTunes + tc = os.path.join(tempfile.gettempdir(), "cover.jpg") + with open(tc,'wb') as tmp_cover: + tmp_cover.write(cover_data) + + if lb_added: + if lb_added.Artwork.Count: + lb_added.Artwork.Item(1).SetArtworkFromFile(tc) + else: + lb_added.AddArtworkFromFile(tc) + + if db_added: + if db_added.Artwork.Count: + db_added.Artwork.Item(1).SetArtworkFromFile(tc) + else: + db_added.AddArtworkFromFile(tc) + + elif format == 'pdf': + if DEBUG: + self.log.info(" unable to set PDF cover via automation interface") try: # Resize for thumb @@ -1097,31 +1217,35 @@ class ITUNES(DevicePlugin): of = cStringIO.StringIO() im.convert('RGB').save(of, 'JPEG') thumb = of.getvalue() + of.close() # Refresh the thumbnail cache if DEBUG: - self.log.info( " refreshing cached thumb for '%s'" % metadata.title) - archive_path = os.path.join(self.cache_dir, "thumbs.zip") - zfw = ZipFile(archive_path, mode='a') + self.log.info( " refreshing cached thumb for '%s'" % metadata.title) + zfw = ZipFile(self.archive_path, mode='a') thumb_path = path.rpartition('.')[0] + '.jpg' zfw.writestr(thumb_path, thumb) - zfw.close() except: self.problem_titles.append("'%s' by %s" % (metadata.title, metadata.author[0])) - self.log.error(" error converting '%s' to thumb for '%s'" % (metadata.cover,metadata.title)) + self.log.error(" error converting '%s' to thumb for '%s'" % (metadata.cover,metadata.title)) + finally: + zfw.close() + else: + if DEBUG: + self.log.info(" no cover defined in metadata for '%s'" % metadata.title) + return thumb - return thumb - - def _create_new_book(self,fpath, metadata, path, db_added, lb_added, thumb): + def _create_new_book(self,fpath, metadata, path, db_added, lb_added, thumb, format): ''' ''' if DEBUG: self.log.info(" ITUNES._create_new_book()") - this_book = Book(metadata.title, metadata.author[0]) - + this_book = Book(metadata.title, authors_to_string(metadata.author)) + this_book.datetime = time.gmtime() this_book.db_id = None this_book.device_collections = [] + this_book.format = format this_book.library_id = lb_added this_book.path = path this_book.thumbnail = thumb @@ -1171,7 +1295,8 @@ class ITUNES(DevicePlugin): plist = None if plist: if DEBUG: - self.log.info(" deleting %s from %s" % (pl_name,fpath)) + self.log.info(" _delete_iTunesMetadata_plist():") + self.log.info(" deleting '%s'\n from '%s'" % (pl_name,fpath)) zf.delete(pl_name) zf.close() @@ -1319,10 +1444,11 @@ class ITUNES(DevicePlugin): self.cached_books[cb]['uuid'])) elif iswindows: for cb in self.cached_books.keys(): - self.log.info("%s%-40.40s %-30.30s %s" % + self.log.info("%s%-40.40s %-30.30s %-4.4s %s" % (' '*indent, self.cached_books[cb]['title'], self.cached_books[cb]['author'], + self.cached_books[cb]['format'], self.cached_books[cb]['uuid'])) self.log.info() @@ -1338,8 +1464,9 @@ class ITUNES(DevicePlugin): fnames = zf.namelist() opf = [x for x in fnames if '.opf' in x][0] if opf: - opf_raw = cStringIO.StringIO(zf.read(opf)).getvalue() - soup = BeautifulSoup(opf_raw) + opf_raw = cStringIO.StringIO(zf.read(opf)) + soup = BeautifulSoup(opf_raw.getvalue()) + opf_raw.close() title = soup.find('dc:title').renderContents() author = soup.find('dc:creator').renderContents() ts = soup.find('meta',attrs={'name':'calibre:timestamp'}) @@ -1419,27 +1546,61 @@ class ITUNES(DevicePlugin): if iswindows: dev_books = self._get_device_books_playlist() if DEBUG: - self.log.info(" ITUNES._find_device_book(uuid)") - self.log.info(" searching for %s ('%s' by %s)" % - (search['uuid'], search['title'], search['author'])) + self.log.info(" ITUNES._find_device_book()") + self.log.info(" searching for '%s' by '%s' (%s)" % + (search['title'], search['author'],search['uuid'])) attempts = 9 while attempts: # Try by uuid - only one hit - hits = dev_books.Search(search['uuid'],self.SearchField.index('All')) - if hits: - hit = hits[0] - self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) - return hit + if 'uuid' in search and search['uuid']: + if DEBUG: + self.log.info(" searching by uuid '%s' ..." % search['uuid']) + hits = dev_books.Search(search['uuid'],self.SearchField.index('All')) + if hits: + hit = hits[0] + self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + return hit # Try by author - there could be multiple hits - hits = dev_books.Search(search['author'],self.SearchField.index('Artists')) + if search['author']: + if DEBUG: + self.log.info(" searching by author '%s' ..." % search['author']) + hits = dev_books.Search(search['author'],self.SearchField.index('Artists')) + if hits: + for hit in hits: + if hit.Name == search['title']: + if DEBUG: + self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + return hit + + # Search by title if no author available + if DEBUG: + self.log.info(" searching by title '%s' ..." % search['title']) + hits = dev_books.Search(search['title'],self.SearchField.index('All')) if hits: for hit in hits: if hit.Name == search['title']: if DEBUG: - self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + self.log.info(" found '%s'" % (hit.Name)) return hit + # PDF just sent, title not updated yet, look for export pattern + # PDF metadata was rewritten at export as 'safe(title) - safe(author)' + if search['format'] == 'pdf': + title = re.sub(r'[^0-9a-zA-Z ]', '_', search['title']) + author = re.sub(r'[^0-9a-zA-Z ]', '_', search['author']) + if DEBUG: + self.log.info(" searching by name: '%s - %s'" % (title,author)) + hits = dev_books.Search('%s - %s' % (title,author), + self.SearchField.index('All')) + if hits: + hit = hits[0] + self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + return hit + else: + if DEBUG: + self.log.info(" no PDF hits") + attempts -= 1 time.sleep(0.5) if DEBUG: @@ -1456,12 +1617,14 @@ class ITUNES(DevicePlugin): if iswindows: if DEBUG: self.log.info(" ITUNES._find_library_book()") + ''' if 'uuid' in search: self.log.info(" looking for '%s' by %s (%s)" % (search['title'], search['author'], search['uuid'])) else: self.log.info(" looking for '%s' by %s" % (search['title'], search['author'])) + ''' for source in self.iTunes.sources: if source.Kind == self.Sources.index('Library'): @@ -1486,29 +1649,60 @@ class ITUNES(DevicePlugin): if DEBUG: self.log.error(" no Books playlist found") + attempts = 9 while attempts: # Find book whose Album field = search['uuid'] - if 'uuid' in search: + if 'uuid' in search and search['uuid']: if DEBUG: self.log.info(" searching by uuid '%s' ..." % search['uuid']) hits = lib_books.Search(search['uuid'],self.SearchField.index('All')) if hits: hit = hits[0] if DEBUG: - self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) return hit + # Search by author if known + if search['author']: + if DEBUG: + self.log.info(" searching by author '%s' ..." % search['author']) + hits = lib_books.Search(search['author'],self.SearchField.index('Artists')) + if hits: + for hit in hits: + if hit.Name == search['title']: + if DEBUG: + self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + return hit + + # Search by title if no author available if DEBUG: - self.log.info(" searching by author '%s' ..." % search['author']) - hits = lib_books.Search(search['author'],self.SearchField.index('Artists')) + self.log.info(" searching by title '%s' ..." % search['title']) + hits = lib_books.Search(search['title'],self.SearchField.index('All')) if hits: for hit in hits: if hit.Name == search['title']: if DEBUG: - self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + self.log.info(" found '%s'" % (hit.Name)) return hit + # PDF just sent, title not updated yet, look for export pattern + # PDF metadata was rewritten at export as 'safe(title) - safe(author)' + if search['format'] == 'pdf': + title = re.sub(r'[^0-9a-zA-Z ]', '_', search['title']) + author = re.sub(r'[^0-9a-zA-Z ]', '_', search['author']) + if DEBUG: + self.log.info(" searching by name: %s - %s" % (title,author)) + hits = lib_books.Search('%s - %s' % (title,author), + self.SearchField.index('All')) + if hits: + hit = hits[0] + self.log.info(" found '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Composer)) + return hit + else: + if DEBUG: + self.log.info(" no PDF hits") + attempts -= 1 time.sleep(0.5) if DEBUG: @@ -1523,54 +1717,90 @@ class ITUNES(DevicePlugin): Convert iTunes artwork to thumbnail Cache generated thumbnails cache_dir = os.path.join(config_dir, 'caches', 'itunes') + as of iTunes 9.2, iBooks 1.1, can't set artwork for PDF files via automation ''' - archive_path = os.path.join(self.cache_dir, "thumbs.zip") - thumb_path = book_path.rpartition('.')[0] + '.jpg' - - try: - zfr = ZipFile(archive_path) - thumb_data = zfr.read(thumb_path) - zfr.close() - except: - zfw = ZipFile(archive_path, mode='a') - else: + # self.settings().use_subdirs is a repurposed DeviceConfig field + # We're using it to skip fetching/caching covers to speed things up + if not self.settings().use_subdirs: + thumb_data = None return thumb_data - self.log.info(" ITUNES._generate_thumbnail()") + thumb_path = book_path.rpartition('.')[0] + '.jpg' if isosx: + title = book.name() + elif iswindows: + title = book.Name + + try: + zfr = ZipFile(self.archive_path) + thumb_data = zfr.read(thumb_path) + if thumb_data == 'None': + if False: + self.log.info(" ITUNES._generate_thumbnail()\n returning None from cover cache for '%s'" % title) + zfr.close() + return None + except: + zfw = ZipFile(self.archive_path, mode='a') + else: + if False: + self.log.info(" returning thumb from cache for '%s'" % title) + return thumb_data + + if DEBUG: + self.log.info(" ITUNES._generate_thumbnail():") + if isosx: + + # Fetch the artwork from iTunes try: - # Resize the cover data = book.artworks[1].raw_data().data - #self._dump_hex(data[:256]) - im = PILImage.open(cStringIO.StringIO(data)) + except: + # If no artwork, write an empty marker to cache + if DEBUG: + self.log.error(" error fetching iTunes artwork for '%s'" % title) + zfw.writestr(thumb_path, 'None') + zfw.close() + return None + + # Generate a thumb + try: + img_data = cStringIO.StringIO(data) + im = PILImage.open(img_data) scaled, width, height = fit_image(im.size[0],im.size[1], 60, 80) im = im.resize((int(width),int(height)), PILImage.ANTIALIAS) + thumb = cStringIO.StringIO() im.convert('RGB').save(thumb,'JPEG') - + thumb_data = thumb.getvalue() + thumb.close() + if False: + self.log.info(" generated thumb for '%s', caching" % title) # Cache the tagged thumb - if DEBUG: - self.log.info(" generated thumb for '%s', caching" % book.name()) - zfw.writestr(thumb_path, thumb.getvalue()) - zfw.close() - return thumb.getvalue() + zfw.writestr(thumb_path, thumb_data) except: - self.log.error(" error generating thumb for '%s'" % book.name()) - try: - zfw.close() - except: - pass - return None + if DEBUG: + self.log.error(" error generating thumb for '%s', caching empty marker" % book.name()) + self._dump_hex(data[:32]) + thumb_data = None + # Cache the empty cover + zfw.writestr(thumb_path, 'None') + finally: + img_data.close() + zfw.close() + + return thumb_data + elif iswindows: - if not book.Artwork.Count: if DEBUG: - self.log.info(" no artwork available") + self.log.info(" no artwork available for '%s'" % book.Name) + zfw.writestr(thumb_path, 'None') + zfw.close() return None - # Save the cover from iTunes + # Fetch the artwork from iTunes + try: tmp_thumb = os.path.join(tempfile.gettempdir(), "thumb.%s" % self.ArtworkFormat[book.Artwork.Item(1).Format]) book.Artwork.Item(1).SaveArtworkToFile(tmp_thumb) @@ -1580,36 +1810,43 @@ class ITUNES(DevicePlugin): im = im.resize((int(width),int(height)), PILImage.ANTIALIAS) thumb = cStringIO.StringIO() im.convert('RGB').save(thumb,'JPEG') + thumb_data = thumb.getvalue() os.remove(tmp_thumb) - - # Cache the tagged thumb - if DEBUG: + thumb.close() + if False: self.log.info(" generated thumb for '%s', caching" % book.Name) - zfw.writestr(thumb_path, thumb.getvalue()) - zfw.close() - return thumb.getvalue() + # Cache the tagged thumb + zfw.writestr(thumb_path, thumb_data) except: - self.log.error(" error generating thumb for '%s'" % book.Name) - try: - zfw.close() - except: - pass - return None + if DEBUG: + self.log.error(" error generating thumb for '%s', caching empty marker" % book.Name) + self._dump_hex(data[:32]) + thumb_data = None + # Cache the empty cover + zfw.writestr(thumb_path,'None') + + finally: + zfw.close() + + return thumb_data def _get_device_book_size(self, file, compressed_size): ''' Calculate the exploded size of file ''' - myZip = ZipFile(file,'r') - myZipList = myZip.infolist() - exploded_file_size = 0 - for file in myZipList: - exploded_file_size += file.file_size - if False: - self.log.info(" ITUNES._get_device_book_size()") - self.log.info(" %d items in archive" % len(myZipList)) - self.log.info(" compressed: %d exploded: %d" % (compressed_size, exploded_file_size)) - myZip.close() + exploded_file_size = compressed_size + format = file.rpartition('.')[2].lower() + if format == 'epub': + myZip = ZipFile(file,'r') + myZipList = myZip.infolist() + exploded_file_size = 0 + for file in myZipList: + exploded_file_size += file.file_size + if False: + self.log.info(" ITUNES._get_device_book_size()") + self.log.info(" %d items in archive" % len(myZipList)) + self.log.info(" compressed: %d exploded: %d" % (compressed_size, exploded_file_size)) + myZip.close() return exploded_file_size def _get_device_books(self): @@ -1635,7 +1872,7 @@ class ITUNES(DevicePlugin): for book in books: # This may need additional entries for international iTunes users - if book.kind() in ['MPEG audio file']: + if book.kind() in self.Audiobooks: if DEBUG: self.log.info(" ignoring '%s' of type '%s'" % (book.name(), book.kind())) else: @@ -1667,7 +1904,7 @@ class ITUNES(DevicePlugin): for book in dev_books: # This may need additional entries for international iTunes users - if book.KindAsString in ['MPEG audio file']: + if book.KindAsString in self.Audiobooks: if DEBUG: self.log.info(" ignoring '%s' of type '%s'" % (book.Name, book.KindAsString)) else: @@ -1701,7 +1938,7 @@ class ITUNES(DevicePlugin): self.log.error(" no iPad|Books playlist found") return pl - def _get_fpath(self,file, metadata, update_md=False): + def _get_fpath(self,file, metadata, format, update_md=False): ''' If the database copy will be deleted after upload, we have to use file (the PersistentTemporaryFile), which will be around until @@ -1723,9 +1960,9 @@ class ITUNES(DevicePlugin): else: # Recipe - PTF if DEBUG: - self.log.info(" file will be deleted after upload") + self.log.info(" file will be deleted after upload") - if update_md: + if format == 'epub' and update_md: self._update_epub_metadata(fpath, metadata) return fpath @@ -1768,21 +2005,27 @@ class ITUNES(DevicePlugin): lib_books = pl.file_tracks() for book in lib_books: # This may need additional entries for international iTunes users - if book.kind() in ['MPEG audio file']: + if book.kind() in self.Audiobooks: if DEBUG: self.log.info(" ignoring '%s' of type '%s'" % (book.name(), book.kind())) else: # Collect calibre orphans - remnants of recipe uploads - path = self.path_template % (book.name(), book.artist()) + format = 'pdf' if book.kind().startswith('PDF') else 'epub' + path = self.path_template % (book.name(), book.artist(),format) if str(book.description()).startswith(self.description_prefix): - if book.location() == appscript.k.missing_value: - library_orphans[path] = book - if False: - self.log.info(" found iTunes PTF '%s' in Library|Books" % book.name()) + try: + if book.location() == appscript.k.missing_value: + library_orphans[path] = book + if False: + self.log.info(" found iTunes PTF '%s' in Library|Books" % book.name()) + except: + if DEBUG: + self.log.error(" iTunes returned an error returning .location() with %s" % book.name()) library_books[path] = book if DEBUG: - self.log.info(" %-30.30s %-30.30s %-40.40s [%s]" % (book.name(), book.artist(), book.album(), book.kind())) + self.log.info(" %-30.30s %-30.30s %-40.40s [%s]" % + (book.name(), book.artist(), book.album(), book.kind())) else: if DEBUG: self.log.info(' no Library playlists') @@ -1820,11 +2063,12 @@ class ITUNES(DevicePlugin): try: for book in lib_books: # This may need additional entries for international iTunes users - if book.KindAsString in ['MPEG audio file']: + if book.KindAsString in self.Audiobooks: if DEBUG: self.log.info(" ignoring %-30.30s of type '%s'" % (book.Name, book.KindAsString)) else: - path = self.path_template % (book.Name, book.Artist) + format = 'pdf' if book.KindAsString.startswith('PDF') else 'epub' + path = self.path_template % (book.Name, book.Artist,format) # Collect calibre orphans if book.Description.startswith(self.description_prefix): @@ -1913,8 +2157,13 @@ class ITUNES(DevicePlugin): running_apps = appscript.app('System Events') if not 'iTunes' in running_apps.processes.name(): if DEBUG: - self.log.info( "ITUNES:open(): Launching iTunes" ) - self.iTunes = iTunes= appscript.app('iTunes', hide=True) + self.log.info( "ITUNES:_launch_iTunes(): Launching iTunes" ) + try: + self.iTunes = iTunes= appscript.app('iTunes', hide=True) + except: + self.iTunes = None + raise UserFeedback(' ITUNES._launch_iTunes(): unable to find installed iTunes', details=None, level=UserFeedback.WARN) + iTunes.run() self.initial_status = 'launched' else: @@ -1937,29 +2186,52 @@ class ITUNES(DevicePlugin): (self.iTunes.name(), self.iTunes.version(), self.initial_status, self.version[0],self.version[1],self.version[2])) self.log.info(" iTunes_media: %s" % self.iTunes_media) + if iswindows: ''' Launch iTunes if not already running Assumes pythoncom wrapper + + *** Current implementation doesn't handle UNC paths correctly, + and python has two incompatible methods to parse UNCs: + os.path.splitdrive() and os.path.splitunc() + need to use os.path.normpath on result of splitunc() + + Once you have the //server/share, convert with os.path.normpath('//server/share') + os.path.splitdrive doesn't work as advertised, so use os.path.splitunc + os.path.splitunc("//server/share") returns ('//server/share','') + os.path.splitunc("C:/Documents") returns ('c:','/documents') + os.path.normpath("//server/share") returns "\\\\server\\share" ''' # Instantiate iTunes - self.iTunes = win32com.client.Dispatch("iTunes.Application") + try: + self.iTunes = win32com.client.Dispatch("iTunes.Application") + except: + self.iTunes = None + raise UserFeedback(' ITUNES._launch_iTunes(): unable to find installed iTunes', details=None, level=UserFeedback.WARN) + if not DEBUG: self.iTunes.Windows[0].Minimized = True self.initial_status = 'launched' # Read the current storage path for iTunes media from the XML file + media_dir = '' + string = None with open(self.iTunes.LibraryXMLPath, 'r') as xml: - soup = BeautifulSoup(xml.read().decode('utf-8')) - mf = soup.find('key',text="Music Folder").parent - string = mf.findNext('string').renderContents() - media_dir = os.path.abspath(string[len('file://localhost/'):].replace('%20',' ')) + for line in xml: + if line.strip().startswith('Music Folder'): + soup = BeautifulSoup(line) + string = soup.find('string').renderContents() + media_dir = os.path.abspath(string[len('file://localhost/'):].replace('%20',' ')) + break if os.path.exists(media_dir): self.iTunes_media = media_dir - else: + elif hasattr(string,'parent'): self.log.error(" could not extract valid iTunes.media_dir from %s" % self.iTunes.LibraryXMLPath) self.log.error(" %s" % string.parent.prettify()) self.log.error(" '%s' not found" % media_dir) + else: + self.log.error(" no media dir found: string: %s" % string) if DEBUG: self.log.info(" %s %s" % (__appname__, __version__)) @@ -2011,7 +2283,9 @@ class ITUNES(DevicePlugin): # Delete existing from Device|Books, add to self.update_list # for deletion from booklist[0] during add_books_to_metadata for book in self.cached_books: - if self.cached_books[book]['uuid'] == metadata.uuid: + if self.cached_books[book]['uuid'] == metadata.uuid and \ + self.cached_books[book]['title'] == metadata.title and \ + self.cached_books[book]['author'] == metadata.authors[0]: self.update_list.append(self.cached_books[book]) self._remove_from_device(self.cached_books[book]) if DEBUG: @@ -2028,15 +2302,17 @@ class ITUNES(DevicePlugin): # Delete existing from Library|Books, add to self.update_list # for deletion from booklist[0] during add_books_to_metadata for book in self.cached_books: - if self.cached_books[book]['uuid'] == metadata.uuid: + if self.cached_books[book]['uuid'] == metadata.uuid and \ + self.cached_books[book]['title'] == metadata.title and \ + self.cached_books[book]['author'] == metadata.authors[0]: self.update_list.append(self.cached_books[book]) self._remove_from_iTunes(self.cached_books[book]) if DEBUG: self.log.info( " deleting library book '%s'" % metadata.title) break - else: - if DEBUG: - self.log.info(" '%s' not in cached_books" % metadata.title) + else: + if DEBUG: + self.log.info(" '%s' not found in cached_books" % metadata.title) def _remove_from_device(self, cached_book): ''' @@ -2044,18 +2320,20 @@ class ITUNES(DevicePlugin): ''' self.log.info(" ITUNES._remove_from_device()") if isosx: - if False: - self.log.info(" deleting %s" % cached_book['dev_book']) + if DEBUG: + self.log.info(" deleting '%s' from iDevice" % cached_book['title']) cached_book['dev_book'].delete() elif iswindows: - dev_pl = self._get_device_books_playlist() - hits = dev_pl.Search(cached_book['uuid'],self.SearchField.index('All')) - if hits: - hit = hits[0] - if False: - self.log.info(" deleting '%s' by %s (%s)" % (hit.Name, hit.Artist, hit.Album)) + hit = self._find_device_book(cached_book) + if hit: + if DEBUG: + self.log.info(" deleting '%s' from iDevice" % cached_book['title']) hit.Delete() + else: + if DEBUG: + self.log.warning(" unable to remove '%s' by '%s' (%s) from device" % + (cached_book['title'],cached_book['author'],cached_book['uuid'])) def _remove_from_iTunes(self, cached_book): ''' @@ -2098,7 +2376,7 @@ class ITUNES(DevicePlugin): except: # We get here if there was an error with .location().path if DEBUG: - self.log.info(" '%s' not found in iTunes" % cached_book['title']) + self.log.info(" '%s' not in iTunes storage" % cached_book['title']) try: self.iTunes.delete(cached_book['lib_book']) @@ -2116,18 +2394,19 @@ class ITUNES(DevicePlugin): path = book.Location except: book = self._find_library_book(cached_book) - path = book.Location + if book: + path = book.Location if book: - storage_path = os.path.split(path) - if path.startswith(self.iTunes_media): + if self.iTunes_media and path.startswith(self.iTunes_media): + storage_path = os.path.split(path) if DEBUG: self.log.info(" removing '%s' at %s" % (cached_book['title'], path)) try: os.remove(path) except: - self.log.warning(" could not find '%s' in iTunes storage" % path) + self.log.warning(" '%s' not in iTunes storage" % path) try: os.rmdir(storage_path[0]) self.log.info(" removed folder '%s'" % storage_path[0]) @@ -2158,20 +2437,34 @@ class ITUNES(DevicePlugin): fnames = zf_opf.namelist() opf = [x for x in fnames if '.opf' in x][0] if opf: - opf_raw = cStringIO.StringIO(zf_opf.read(opf)).getvalue() - soup = BeautifulSoup(opf_raw) + opf_raw = cStringIO.StringIO(zf_opf.read(opf)) + soup = BeautifulSoup(opf_raw.getvalue()) + opf_raw.close() + + # Touch existing calibre timestamp md = soup.find('metadata') - ts = md.find('meta',attrs={'name':'calibre:timestamp'}) - if ts: - # Touch existing calibre timestamp - timestamp = ts['content'] - old_ts = parse_date(timestamp) - metadata.timestamp = datetime.datetime(old_ts.year, old_ts.month, old_ts.day, old_ts.hour, - old_ts.minute, old_ts.second, old_ts.microsecond+1, old_ts.tzinfo) + if md: + ts = md.find('meta',attrs={'name':'calibre:timestamp'}) + if ts: + timestamp = ts['content'] + old_ts = parse_date(timestamp) + metadata.timestamp = datetime.datetime(old_ts.year, old_ts.month, old_ts.day, old_ts.hour, + old_ts.minute, old_ts.second, old_ts.microsecond+1, old_ts.tzinfo) + else: + metadata.timestamp = isoformat(now()) + if DEBUG: + self.log.info(" add timestamp: %s" % metadata.timestamp) else: metadata.timestamp = isoformat(now()) if DEBUG: + self.log.warning(" missing block in OPF file") self.log.info(" add timestamp: %s" % metadata.timestamp) + + # Force the language declaration for iBooks 1.1 + metadata.language = get_lang().replace('_', '-') + if DEBUG: + self.log.info(" rewriting language: %s" % metadata.language) + zf_opf.close() # If 'News' in tags, tweak the title/author for friendlier display in iBooks @@ -2252,19 +2545,25 @@ class ITUNES(DevicePlugin): if isosx: if lb_added: lb_added.album.set(metadata.title) + lb_added.artist.set(authors_to_string(metadata.authors)) lb_added.composer.set(metadata.uuid) lb_added.description.set("%s %s" % (self.description_prefix,strftime('%Y-%m-%d %H:%M:%S'))) lb_added.enabled.set(True) lb_added.sort_artist.set(metadata.author_sort.title()) lb_added.sort_name.set(this_book.title_sorter) + if this_book.format == 'pdf': + lb_added.name.set(metadata.title) if db_added: db_added.album.set(metadata.title) + db_added.artist.set(authors_to_string(metadata.authors)) db_added.composer.set(metadata.uuid) db_added.description.set("%s %s" % (self.description_prefix,strftime('%Y-%m-%d %H:%M:%S'))) db_added.enabled.set(True) db_added.sort_artist.set(metadata.author_sort.title()) db_added.sort_name.set(this_book.title_sorter) + if this_book.format == 'pdf': + db_added.name.set(metadata.title) if metadata.comments: if lb_added: @@ -2284,20 +2583,31 @@ class ITUNES(DevicePlugin): # Set genre from series if available, else first alpha tag # Otherwise iTunes grabs the first dc:subject from the opf metadata - if self.use_series_data and metadata.series: + if metadata.series and self.settings().read_metadata: + if DEBUG: + self.log.info(" using Series name as Genre") + + # Format the index as a sort key + index = metadata.series_index + integer = int(index) + fraction = index-integer + series_index = '%04d%s' % (integer, str('%0.4f' % fraction).lstrip('0')) if lb_added: - lb_added.sort_name.set("%s %03d" % (metadata.series, metadata.series_index)) + lb_added.sort_name.set("%s %s" % (metadata.series, series_index)) lb_added.genre.set(metadata.series) lb_added.episode_ID.set(metadata.series) lb_added.episode_number.set(metadata.series_index) if db_added: - db_added.sort_name.set("%s %03d" % (metadata.series, metadata.series_index)) + db_added.sort_name.set("%s %s" % (metadata.series, series_index)) db_added.genre.set(metadata.series) db_added.episode_ID.set(metadata.series) db_added.episode_number.set(metadata.series_index) elif metadata.tags: + if DEBUG: + self.log.info(" %susing Tag as Genre" % + "no Series name available, " if self.settings().read_metadata else '') for tag in metadata.tags: if self._is_alpha(tag[0]): if lb_added: @@ -2309,19 +2619,25 @@ class ITUNES(DevicePlugin): elif iswindows: if lb_added: lb_added.Album = metadata.title + lb_added.Artist = authors_to_string(metadata.authors) lb_added.Composer = metadata.uuid lb_added.Description = ("%s %s" % (self.description_prefix,strftime('%Y-%m-%d %H:%M:%S'))) lb_added.Enabled = True lb_added.SortArtist = (metadata.author_sort.title()) lb_added.SortName = (this_book.title_sorter) + if this_book.format == 'pdf': + lb_added.Name = metadata.title if db_added: db_added.Album = metadata.title + db_added.Artist = authors_to_string(metadata.authors) db_added.Composer = metadata.uuid db_added.Description = ("%s %s" % (self.description_prefix,strftime('%Y-%m-%d %H:%M:%S'))) db_added.Enabled = True db_added.SortArtist = (metadata.author_sort.title()) db_added.SortName = (this_book.title_sorter) + if this_book.format == 'pdf': + db_added.Name = metadata.title if metadata.comments: if lb_added: @@ -2345,9 +2661,16 @@ class ITUNES(DevicePlugin): # Otherwise iBooks uses first from opf # iTunes balks on setting EpisodeNumber, but it sticks (9.1.1.12) - if self.use_series_data and metadata.series: + if metadata.series and self.settings().read_metadata: + if DEBUG: + self.log.info(" using Series name as Genre") + # Format the index as a sort key + index = metadata.series_index + integer = int(index) + fraction = index-integer + series_index = '%04d%%s' % (integer, str('%0.4f' % fraction).lstrip('0')) if lb_added: - lb_added.SortName = "%s %03d" % (metadata.series, metadata.series_index) + lb_added.SortName = "%s %s" % (metadata.series, series_index) lb_added.Genre = metadata.series lb_added.EpisodeID = metadata.series try: @@ -2355,7 +2678,7 @@ class ITUNES(DevicePlugin): except: pass if db_added: - db_added.SortName = "%s %03d" % (metadata.series, metadata.series_index) + db_added.SortName = "%s %s" % (metadata.series, series_index) db_added.Genre = metadata.series db_added.EpisodeID = metadata.series try: @@ -2365,6 +2688,8 @@ class ITUNES(DevicePlugin): self.log.warning(" iTunes automation interface reported an error" " setting EpisodeNumber on iDevice") elif metadata.tags: + if DEBUG: + self.log.info(" using Tag as Genre") for tag in metadata.tags: if self._is_alpha(tag[0]): if lb_added: @@ -2373,6 +2698,233 @@ class ITUNES(DevicePlugin): db_added.Genre = tag break +class ITUNES_ASYNC(ITUNES): + ''' + This subclass allows the user to interact directly with iTunes via a menu option + 'Connect to iTunes' in Send to device. + ''' + name = 'iTunes interface' + gui_name = 'Apple iTunes' + icon = I('devices/itunes.png') + description = _('Communicate with iTunes.') + + connected = False + + def __init__(self,path): + if DEBUG: + self.log.info("ITUNES_ASYNC:__init__()") + + if isosx and appscript is None: + self.connected = False + raise UserFeedback('OSX 10.5 or later required', details=None, level=UserFeedback.WARN) + return + else: + self.connected = True + + if isosx: + self._launch_iTunes() + + if iswindows: + try: + pythoncom.CoInitialize() + self._launch_iTunes() + except: + raise UserFeedback('unable to launch iTunes', details=None, level=UserFeedback.WARN) + finally: + pythoncom.CoUninitialize() + + self.manual_sync_mode = False + + def books(self, oncard=None, end_session=True): + """ + Return a list of ebooks on the device. + @param oncard: If 'carda' or 'cardb' return a list of ebooks on the + specific storage card, otherwise return list of ebooks + in main memory of device. If a card is specified and no + books are on the card return empty list. + @return: A BookList. + + Implementation notes: + iTunes does not sync purchased books, they are only on the device. They are visible, but + they are not backed up to iTunes. Since calibre can't manage them, don't show them in the + list of device books. + + """ + if not oncard: + if DEBUG: + self.log.info("ITUNES_ASYNC:books()") + if self.settings().use_subdirs: + self.log.info(" Cover fetching/caching enabled") + else: + self.log.info(" Cover fetching/caching disabled") + + # Fetch a list of books from iTunes + + booklist = BookList(self.log) + cached_books = {} + + if isosx: + library_books = self._get_library_books() + book_count = float(len(library_books)) + for (i,book) in enumerate(library_books): + format = 'pdf' if library_books[book].kind().startswith('PDF') else 'epub' + this_book = Book(library_books[book].name(), library_books[book].artist()) + this_book.path = self.path_template % (library_books[book].name(), + library_books[book].artist(), + format) + try: + this_book.datetime = parse_date(str(library_books[book].date_added())).timetuple() + except: + this_book.datetime = time.gmtime() + this_book.db_id = None + this_book.device_collections = [] + #this_book.library_id = library_books[this_book.path] if this_book.path in library_books else None + this_book.library_id = library_books[book] + this_book.size = library_books[book].size() + this_book.uuid = library_books[book].album() + # Hack to discover if we're running in GUI environment + if self.report_progress is not None: + this_book.thumbnail = self._generate_thumbnail(this_book.path, library_books[book]) + else: + this_book.thumbnail = None + booklist.add_book(this_book, False) + + cached_books[this_book.path] = { + 'title':library_books[book].name(), + 'author':[library_books[book].artist()], + 'lib_book':library_books[book], + 'dev_book':None, + 'uuid': library_books[book].composer(), + 'format': format + } + + if self.report_progress is not None: + self.report_progress(i+1/book_count, _('%d of %d') % (i+1, book_count)) + + elif iswindows: + try: + pythoncom.CoInitialize() + self.iTunes = win32com.client.Dispatch("iTunes.Application") + library_books = self._get_library_books() + book_count = float(len(library_books)) + for (i,book) in enumerate(library_books): + this_book = Book(library_books[book].Name, library_books[book].Artist) + format = 'pdf' if library_books[book].KindAsString.startswith('PDF') else 'epub' + this_book.path = self.path_template % (library_books[book].Name, + library_books[book].Artist, + format) + try: + this_book.datetime = parse_date(str(library_books[book].DateAdded)).timetuple() + except: + this_book.datetime = time.gmtime() + this_book.db_id = None + this_book.device_collections = [] + this_book.library_id = library_books[book] + this_book.size = library_books[book].Size + # Hack to discover if we're running in GUI environment + if self.report_progress is not None: + this_book.thumbnail = self._generate_thumbnail(this_book.path, library_books[book]) + else: + this_book.thumbnail = None + booklist.add_book(this_book, False) + + cached_books[this_book.path] = { + 'title':library_books[book].Name, + 'author':library_books[book].Artist, + 'lib_book':library_books[book], + 'uuid': library_books[book].Composer, + 'format': format + } + + if self.report_progress is not None: + self.report_progress(i+1/book_count, + _('%d of %d') % (i+1, book_count)) + + finally: + pythoncom.CoUninitialize() + + if self.report_progress is not None: + self.report_progress(1.0, _('finished')) + self.cached_books = cached_books + if DEBUG: + self._dump_booklist(booklist, 'returning from books()', indent=2) + self._dump_cached_books('returning from books()',indent=2) + return booklist + + else: + return BookList(self.log) + + def eject(self): + ''' + Un-mount / eject the device from the OS. This does not check if there + are pending GUI jobs that need to communicate with the device. + ''' + if DEBUG: + self.log.info("ITUNES_ASYNC:eject()") + self.iTunes = None + self.connected = False + + def free_space(self, end_session=True): + """ + Get free space available on the mountpoints: + 1. Main memory + 2. Card A + 3. Card B + + @return: A 3 element list with free space in bytes of (1, 2, 3). If a + particular device doesn't have any of these locations it should return -1. + """ + if DEBUG: + self.log.info("ITUNES_ASYNC:free_space()") + free_space = 0 + if isosx: + s = os.statvfs(os.sep) + free_space = s.f_bavail * s.f_frsize + elif iswindows: + free_bytes = ctypes.c_ulonglong(0) + ctypes.windll.kernel32.GetDiskFreeSpaceExW(ctypes.c_wchar_p(os.sep), None, None, ctypes.pointer(free_bytes)) + free_space = free_bytes.value + return (free_space,-1,-1) + + def get_device_information(self, end_session=True): + """ + Ask device for device information. See L{DeviceInfoQuery}. + @return: (device name, device version, software version on device, mime type) + """ + if DEBUG: + self.log.info("ITUNES_ASYNC:get_device_information()") + + return ('iTunes','hw v1.0','sw v1.0', 'mime type normally goes here') + + def is_usb_connected(self, devices_on_system, debug=False, + only_presence=False): + return self.connected, self + + def sync_booklists(self, booklists, end_session=True): + ''' + Update metadata on device. + @param booklists: A tuple containing the result of calls to + (L{books}(oncard=None), L{books}(oncard='carda'), + L{books}(oncard='cardb')). + ''' + + if DEBUG: + self.log.info("ITUNES_ASYNC.sync_booklists()") + + # Inform user of any problem books + if self.problem_titles: + raise UserFeedback(self.problem_msg, + details='\n'.join(self.problem_titles), level=UserFeedback.WARN) + self.problem_titles = [] + self.problem_msg = None + self.update_list = [] + + def unmount_device(self): + ''' + ''' + if DEBUG: + self.log.info("ITUNES_ASYNC:unmount_device()") + self.connected = False class BookList(list): ''' @@ -2429,8 +2981,6 @@ class BookList(list): class Book(MetaInformation): ''' A simple class describing a book in the iTunes Books Library. - Q's: - - Should thumbnail come from calibre if available? - See ebooks.metadata.__init__ for all fields ''' def __init__(self,title,author): diff --git a/src/calibre/devices/eb600/driver.py b/src/calibre/devices/eb600/driver.py index 9b7a21a3bb..bf03b1e4c2 100644 --- a/src/calibre/devices/eb600/driver.py +++ b/src/calibre/devices/eb600/driver.py @@ -186,6 +186,15 @@ class BOOQ(EB600): WINDOWS_MAIN_MEM = 'EB600' WINDOWS_CARD_A_MEM = 'EB600' +class MENTOR(EB600): + + name = 'Astak Mentor EB600' + gui_name = 'Mentor' + description = _('Communicate with the Astak Mentor EB600') + FORMATS = ['epub', 'fb2', 'mobi', 'prc', 'pdf', 'txt'] + + WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = 'MENTOR' + class ELONEX(EB600): name = 'Elonex 600EB' diff --git a/src/calibre/devices/folder_device/driver.py b/src/calibre/devices/folder_device/driver.py index e1c95e865a..1d00b32864 100644 --- a/src/calibre/devices/folder_device/driver.py +++ b/src/calibre/devices/folder_device/driver.py @@ -66,7 +66,7 @@ class FOLDER_DEVICE(USBMS): detected_device=None): pass - def disconnect_from_folder(self): + def unmount_device(self): self._main_prefix = '' self.is_connected = False diff --git a/src/calibre/devices/hanlin/driver.py b/src/calibre/devices/hanlin/driver.py index 0d972afc76..f19135a7e7 100644 --- a/src/calibre/devices/hanlin/driver.py +++ b/src/calibre/devices/hanlin/driver.py @@ -106,9 +106,11 @@ class BOOX(HANLINV3): description = _('Communicate with the BOOX eBook reader.') author = 'Jesus Manuel Marinho Valcarce' supported_platforms = ['windows', 'osx', 'linux'] + METADATA_CACHE = '.metadata.calibre' # Ordered list of supported formats - FORMATS = ['epub', 'fb2', 'djvu', 'pdf', 'html', 'txt', 'rtf', 'mobi', 'prc', 'chm'] + FORMATS = ['epub', 'fb2', 'djvu', 'pdf', 'html', 'txt', 'rtf', 'mobi', + 'prc', 'chm', 'doc'] VENDOR_ID = [0x0525] PRODUCT_ID = [0xa4a5] diff --git a/src/calibre/devices/hanvon/driver.py b/src/calibre/devices/hanvon/driver.py index 7a0de3064e..d5b71b2cf5 100644 --- a/src/calibre/devices/hanvon/driver.py +++ b/src/calibre/devices/hanvon/driver.py @@ -24,7 +24,7 @@ class N516(USBMS): VENDOR_ID = [0x0525] PRODUCT_ID = [0xa4a5] - BCD = [0x323, 0x326] + BCD = [0x323, 0x326, 0x327] VENDOR_NAME = 'INGENIC' WINDOWS_MAIN_MEM = '_FILE-STOR_GADGE' diff --git a/src/calibre/devices/interface.py b/src/calibre/devices/interface.py index da8a2cb978..c417c501f4 100644 --- a/src/calibre/devices/interface.py +++ b/src/calibre/devices/interface.py @@ -59,7 +59,7 @@ class DevicePlugin(Plugin): return cls.__name__ return cls.name - + # Device detection {{{ def test_bcd_windows(self, device_id, bcd): if bcd is None or len(bcd) == 0: return True @@ -152,6 +152,7 @@ class DevicePlugin(Plugin): return True, dev return False, None + # }}} def reset(self, key='-1', log_packets=False, report_progress=None, detected_device=None) : @@ -372,14 +373,12 @@ class DevicePlugin(Plugin): @classmethod def settings(cls): ''' - Should return an opts object. The opts object should have one attribute + Should return an opts object. The opts object should have at least one attribute `format_map` which is an ordered list of formats for the device. ''' raise NotImplementedError() - - class BookList(list): ''' A list of books. Each Book object must have the fields: diff --git a/src/calibre/devices/kindle/driver.py b/src/calibre/devices/kindle/driver.py index cd56d210e1..98e16bd207 100644 --- a/src/calibre/devices/kindle/driver.py +++ b/src/calibre/devices/kindle/driver.py @@ -213,7 +213,7 @@ class KINDLE_DX(KINDLE2): PRODUCT_ID = [0x0003] BCD = [0x0100] -class Bookmark(): +class Bookmark(): # {{{ ''' A simple class fetching bookmark data Kindle-specific @@ -429,6 +429,7 @@ class Bookmark(): entries, = unpack('>I', data[9:13]) current_entry = 0 e_base = 0x0d + self.pdf_page_offset = 0 while current_entry < entries: ''' location, = unpack('>I', data[e_base+2:e_base+6]) @@ -516,3 +517,6 @@ class Bookmark(): else: print "unsupported bookmark_extension: %s" % self.bookmark_extension + +# }}} + diff --git a/src/calibre/devices/kobo/books.py b/src/calibre/devices/kobo/books.py new file mode 100644 index 0000000000..7ee5beaec0 --- /dev/null +++ b/src/calibre/devices/kobo/books.py @@ -0,0 +1,116 @@ +__license__ = 'GPL v3' +__copyright__ = '2010, Timothy Legge ' +''' +''' + +import os +import re +import time + +from calibre.ebooks.metadata import MetaInformation +from calibre.constants import filesystem_encoding, preferred_encoding +from calibre import isbytestring + +class Book(MetaInformation): + + BOOK_ATTRS = ['lpath', 'size', 'mime', 'device_collections', '_new_book'] + + JSON_ATTRS = [ + 'lpath', 'title', 'authors', 'mime', 'size', 'tags', 'author_sort', + 'title_sort', 'comments', 'category', 'publisher', 'series', + 'series_index', 'rating', 'isbn', 'language', 'application_id', + 'book_producer', 'lccn', 'lcc', 'ddc', 'rights', 'publication_type', + 'uuid', + ] + + def __init__(self, prefix, lpath, title, authors, mime, date, ContentType, thumbnail_name, other=None): + + MetaInformation.__init__(self, '') + self.device_collections = [] + self._new_book = False + + self.path = os.path.join(prefix, lpath) + if os.sep == '\\': + self.path = self.path.replace('/', '\\') + self.lpath = lpath.replace('\\', '/') + else: + self.lpath = lpath + + self.title = title + if not authors: + self.authors = [''] + else: + self.authors = [authors] + self.mime = mime + try: + self.size = os.path.getsize(self.path) + except OSError: + self.size = 0 + try: + if ContentType == '6': + self.datetime = time.strptime(date, "%Y-%m-%dT%H:%M:%S.%f") + else: + self.datetime = time.gmtime(os.path.getctime(self.path)) + except: + self.datetime = time.gmtime() + + if thumbnail_name is not None: + self.thumbnail = ImageWrapper(thumbnail_name) + self.tags = [] + if other: + self.smart_update(other) + + def __eq__(self, other): + return self.path == getattr(other, 'path', None) + + @dynamic_property + def db_id(self): + doc = '''The database id in the application database that this file corresponds to''' + def fget(self): + match = re.search(r'_(\d+)$', self.lpath.rpartition('.')[0]) + if match: + return int(match.group(1)) + return None + return property(fget=fget, doc=doc) + + @dynamic_property + def title_sorter(self): + doc = '''String to sort the title. If absent, title is returned''' + def fget(self): + return re.sub('^\s*A\s+|^\s*The\s+|^\s*An\s+', '', self.title).rstrip() + return property(doc=doc, fget=fget) + + @dynamic_property + def thumbnail(self): + return None + + def smart_update(self, other): + ''' + Merge the information in C{other} into self. In case of conflicts, the information + in C{other} takes precedence, unless the information in C{other} is NULL. + ''' + + MetaInformation.smart_update(self, other) + + for attr in self.BOOK_ATTRS: + if hasattr(other, attr): + val = getattr(other, attr, None) + setattr(self, attr, val) + + def to_json(self): + json = {} + for attr in self.JSON_ATTRS: + val = getattr(self, attr) + if isbytestring(val): + enc = filesystem_encoding if attr == 'lpath' else preferred_encoding + val = val.decode(enc, 'replace') + elif isinstance(val, (list, tuple)): + val = [x.decode(preferred_encoding, 'replace') if + isbytestring(x) else x for x in val] + json[attr] = val + return json + +class ImageWrapper(object): + def __init__(self, image_path): + self.image_path = image_path + diff --git a/src/calibre/devices/kobo/driver.py b/src/calibre/devices/kobo/driver.py index 4b14b2bf8e..f4c4cad3c7 100644 --- a/src/calibre/devices/kobo/driver.py +++ b/src/calibre/devices/kobo/driver.py @@ -2,17 +2,26 @@ # vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai __license__ = 'GPL v3' -__copyright__ = '2010, Kovid Goyal ' +__copyright__ = '2010, Timothy Legge and Kovid Goyal ' __docformat__ = 'restructuredtext en' +import os +import sqlite3 as sqlite + +from calibre.devices.usbms.books import BookList +from calibre.devices.kobo.books import Book +from calibre.devices.kobo.books import ImageWrapper +from calibre.devices.mime import mime_type_ext from calibre.devices.usbms.driver import USBMS +from calibre import prints class KOBO(USBMS): name = 'Kobo Reader Device Interface' gui_name = 'Kobo Reader' description = _('Communicate with the Kobo Reader') - author = 'Kovid Goyal' + author = 'Timothy Legge and Kovid Goyal' + version = (1, 0, 4) supported_platforms = ['windows', 'osx', 'linux'] @@ -29,3 +38,320 @@ class KOBO(USBMS): EBOOK_DIR_MAIN = '' SUPPORTS_SUB_DIRS = True + def initialize(self): + USBMS.initialize(self) + self.book_class = Book + + def books(self, oncard=None, end_session=True): + from calibre.ebooks.metadata.meta import path_to_ext + + dummy_bl = BookList(None, None, None) + + if oncard == 'carda' and not self._card_a_prefix: + self.report_progress(1.0, _('Getting list of books on device...')) + return dummy_bl + elif oncard == 'cardb' and not self._card_b_prefix: + self.report_progress(1.0, _('Getting list of books on device...')) + return dummy_bl + elif oncard and oncard != 'carda' and oncard != 'cardb': + self.report_progress(1.0, _('Getting list of books on device...')) + return dummy_bl + + prefix = self._card_a_prefix if oncard == 'carda' else \ + self._card_b_prefix if oncard == 'cardb' \ + else self._main_prefix + + # get the metadata cache + bl = self.booklist_class(oncard, prefix, self.settings) + need_sync = self.parse_metadata_cache(bl, prefix, self.METADATA_CACHE) + + # make a dict cache of paths so the lookup in the loop below is faster. + bl_cache = {} + for idx,b in enumerate(bl): + bl_cache[b.lpath] = idx + + def update_booklist(prefix, path, title, authors, mime, date, ContentType, ImageID): + changed = False + # if path_to_ext(path) in self.FORMATS: + try: + lpath = path.partition(self.normalize_path(prefix))[2] + if lpath.startswith(os.sep): + lpath = lpath[len(os.sep):] + lpath = lpath.replace('\\', '/') +# print "LPATH: " + lpath + + path = self.normalize_path(path) + # print "Normalized FileName: " + path + + idx = bl_cache.get(lpath, None) + if idx is not None: + if ImageID is not None: + imagename = self.normalize_path(self._main_prefix + '.kobo/images/' + ImageID + ' - NickelBookCover.parsed') + #print "Image name Normalized: " + imagename + if imagename is not None: + bl[idx].thumbnail = ImageWrapper(imagename) + bl_cache[lpath] = None + if ContentType != '6': + if self.update_metadata_item(bl[idx]): + # print 'update_metadata_item returned true' + changed = True + else: + book = Book(prefix, lpath, title, authors, mime, date, ContentType, ImageID) + # print 'Update booklist' + if bl.add_book(book, replace_metadata=False): + changed = True + except: # Probably a path encoding error + import traceback + traceback.print_exc() + return changed + + connection = sqlite.connect(self._main_prefix + '.kobo/KoboReader.sqlite') + cursor = connection.cursor() + + #query = 'select count(distinct volumeId) from volume_shortcovers' + #cursor.execute(query) + #for row in (cursor): + # numrows = row[0] + #cursor.close() + + query= 'select Title, Attribution, DateCreated, ContentID, MimeType, ContentType, ' \ + 'ImageID from content where BookID is Null' + + cursor.execute (query) + + changed = False + for i, row in enumerate(cursor): + # self.report_progress((i+1) / float(numrows), _('Getting list of books on device...')) + + path = self.path_from_contentid(row[3], row[5], oncard) + mime = mime_type_ext(path_to_ext(row[3])) + + if oncard != 'carda' and oncard != 'cardb' and not row[3].startswith("file:///mnt/sd/"): + changed = update_booklist(self._main_prefix, path, row[0], row[1], mime, row[2], row[5], row[6]) + # print "shortbook: " + path + elif oncard == 'carda' and row[3].startswith("file:///mnt/sd/"): + changed = update_booklist(self._card_a_prefix, path, row[0], row[1], mime, row[2], row[5], row[6]) + + if changed: + need_sync = True + + cursor.close() + connection.close() + + # Remove books that are no longer in the filesystem. Cache contains + # indices into the booklist if book not in filesystem, None otherwise + # Do the operation in reverse order so indices remain valid + for idx in sorted(bl_cache.itervalues(), reverse=True): + if idx is not None: + need_sync = True + del bl[idx] + + #print "count found in cache: %d, count of files in metadata: %d, need_sync: %s" % \ + # (len(bl_cache), len(bl), need_sync) + if need_sync: #self.count_found_in_bl != len(bl) or need_sync: + if oncard == 'cardb': + self.sync_booklists((None, None, bl)) + elif oncard == 'carda': + self.sync_booklists((None, bl, None)) + else: + self.sync_booklists((bl, None, None)) + + self.report_progress(1.0, _('Getting list of books on device...')) + return bl + + def delete_via_sql(self, ContentID, ContentType): + # Delete Order: + # 1) shortcover_page + # 2) volume_shorcover + # 2) content + + connection = sqlite.connect(self._main_prefix + '.kobo/KoboReader.sqlite') + cursor = connection.cursor() + t = (ContentID,) + cursor.execute('select ImageID from content where ContentID = ?', t) + + ImageID = None + for row in cursor: + # First get the ImageID to delete the images + ImageID = row[0] + cursor.close() + + cursor = connection.cursor() + if ContentType == 6: + # Delete the shortcover_pages first + cursor.execute('delete from shortcover_page where shortcoverid in (select ContentID from content where BookID = ?)', t) + + #Delete the volume_shortcovers second + cursor.execute('delete from volume_shortcovers where volumeid = ?', t) + + # Delete the chapters associated with the book next + t = (ContentID,ContentID,) + cursor.execute('delete from content where BookID = ? or ContentID = ?', t) + + connection.commit() + + cursor.close() + if ImageID != None: + print "Error condition ImageID was not found" + print "You likely tried to delete a book that the kobo has not yet added to the database" + + connection.close() + # If all this succeeds we need to delete the images files via the ImageID + return ImageID + + def delete_images(self, ImageID): + if ImageID != None: + path_prefix = '.kobo/images/' + path = self._main_prefix + path_prefix + ImageID + + file_endings = (' - iPhoneThumbnail.parsed', ' - bbMediumGridList.parsed', ' - NickelBookCover.parsed',) + + for ending in file_endings: + fpath = path + ending + fpath = self.normalize_path(fpath) + + if os.path.exists(fpath): + # print 'Image File Exists: ' + fpath + os.unlink(fpath) + + def delete_books(self, paths, end_session=True): + for i, path in enumerate(paths): + self.report_progress((i+1) / float(len(paths)), _('Removing books from device...')) + path = self.normalize_path(path) + # print "Delete file normalized path: " + path + extension = os.path.splitext(path)[1] + + if extension == '.kobo': + # Kobo books do not have book files. They do have some images though + #print "kobo book" + ContentType = 6 + ContentID = self.contentid_from_path(path, ContentType) + elif extension == '.pdf' or extension == '.epub': + # print "ePub or pdf" + ContentType = 16 + #print "Path: " + path + ContentID = self.contentid_from_path(path, ContentType) + # print "ContentID: " + ContentID + else: # if extension == '.html' or extension == '.txt': + ContentType = 999 # Yet another hack: to get around Kobo changing how ContentID is stored + ContentID = self.contentid_from_path(path, ContentType) + + ImageID = self.delete_via_sql(ContentID, ContentType) + #print " We would now delete the Images for" + ImageID + self.delete_images(ImageID) + + if os.path.exists(path): + # Delete the ebook + # print "Delete the ebook: " + path + os.unlink(path) + + filepath = os.path.splitext(path)[0] + for ext in self.DELETE_EXTS: + if os.path.exists(filepath + ext): + # print "Filename: " + filename + os.unlink(filepath + ext) + if os.path.exists(path + ext): + # print "Filename: " + filename + os.unlink(path + ext) + + if self.SUPPORTS_SUB_DIRS: + try: + # print "removed" + os.removedirs(os.path.dirname(path)) + except: + pass + self.report_progress(1.0, _('Removing books from device...')) + + def remove_books_from_metadata(self, paths, booklists): + for i, path in enumerate(paths): + self.report_progress((i+1) / float(len(paths)), _('Removing books from device metadata listing...')) + for bl in booklists: + for book in bl: + #print "Book Path: " + book.path + if path.endswith(book.path): + #print " Remove: " + book.path + bl.remove_book(book) + self.report_progress(1.0, _('Removing books from device metadata listing...')) + + def add_books_to_metadata(self, locations, metadata, booklists): + metadata = iter(metadata) + for i, location in enumerate(locations): + self.report_progress((i+1) / float(len(locations)), _('Adding books to device metadata listing...')) + info = metadata.next() + blist = 2 if location[1] == 'cardb' else 1 if location[1] == 'carda' else 0 + + # Extract the correct prefix from the pathname. To do this correctly, + # we must ensure that both the prefix and the path are normalized + # so that the comparison will work. Book's __init__ will fix up + # lpath, so we don't need to worry about that here. + path = self.normalize_path(location[0]) + if self._main_prefix: + prefix = self._main_prefix if \ + path.startswith(self.normalize_path(self._main_prefix)) else None + if not prefix and self._card_a_prefix: + prefix = self._card_a_prefix if \ + path.startswith(self.normalize_path(self._card_a_prefix)) else None + if not prefix and self._card_b_prefix: + prefix = self._card_b_prefix if \ + path.startswith(self.normalize_path(self._card_b_prefix)) else None + if prefix is None: + prints('in add_books_to_metadata. Prefix is None!', path, + self._main_prefix) + continue + #print "Add book to metatdata: " + #print "prefix: " + prefix + lpath = path.partition(prefix)[2] + if lpath.startswith('/') or lpath.startswith('\\'): + lpath = lpath[1:] + #print "path: " + lpath + #book = self.book_class(prefix, lpath, other=info) + lpath = self.normalize_path(prefix + lpath) + book = Book(prefix, lpath, '', '', '', '', '', '', other=info) + if book.size is None: + book.size = os.stat(self.normalize_path(path)).st_size + booklists[blist].add_book(book, replace_metadata=True) + self.report_progress(1.0, _('Adding books to device metadata listing...')) + + def contentid_from_path(self, path, ContentType): + if ContentType == 6: + ContentID = os.path.splitext(path)[0] + # Remove the prefix on the file. it could be either + ContentID = ContentID.replace(self._main_prefix, '') + if self._card_a_prefix is not None: + ContentID = ContentID.replace(self._card_a_prefix, '') + elif ContentType == 999: # HTML Files + ContentID = path + ContentID = ContentID.replace(self._main_prefix, "/mnt/onboard/") + if self._card_a_prefix is not None: + ContentID = ContentID.replace(self._card_a_prefix, "/mnt/sd/") + else: # ContentType = 16 + ContentID = path + ContentID = ContentID.replace(self._main_prefix, "file:///mnt/onboard/") + if self._card_a_prefix is not None: + ContentID = ContentID.replace(self._card_a_prefix, "file:///mnt/sd/") + ContentID = ContentID.replace("\\", '/') + return ContentID + + + def path_from_contentid(self, ContentID, ContentType, oncard): + path = ContentID + + if oncard == 'cardb': + print 'path from_contentid cardb' + elif oncard == 'carda': + path = path.replace("file:///mnt/sd/", self._card_a_prefix) + # print "SD Card: " + filename + else: + if ContentType == "6": + # This is a hack as the kobo files do not exist + # but the path is required to make a unique id + # for calibre's reference + path = self._main_prefix + path + '.kobo' + # print "Path: " + path + else: + # if path.startswith("file:///mnt/onboard/"): + path = path.replace("file:///mnt/onboard/", self._main_prefix) + path = path.replace("/mnt/onboard/", self._main_prefix) + # print "Internal: " + filename + + return path diff --git a/src/calibre/devices/misc.py b/src/calibre/devices/misc.py index 4310c51421..d74689c45c 100644 --- a/src/calibre/devices/misc.py +++ b/src/calibre/devices/misc.py @@ -49,3 +49,41 @@ class AVANT(USBMS): EBOOK_DIR_MAIN = '' SUPPORTS_SUB_DIRS = True +class SWEEX(USBMS): + name = 'Sweex Device Interface' + gui_name = 'Sweex' + description = _('Communicate with the Sweex MM300') + author = 'Kovid Goyal' + supported_platforms = ['windows', 'osx', 'linux'] + + # Ordered list of supported formats + FORMATS = ['epub', 'prc', 'fb2', 'html', 'rtf', 'chm', 'pdf', 'txt'] + + VENDOR_ID = [0x0525] + PRODUCT_ID = [0xa4a5] + BCD = [0x0319] + + VENDOR_NAME = 'SWEEX' + WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = 'EBOOKREADER' + + EBOOK_DIR_MAIN = '' + SUPPORTS_SUB_DIRS = True + +class PDNOVEL(USBMS): + name = 'Pandigital Novel device interface' + gui_name = 'PD Novel' + description = _('Communicate with the Pandigital Novel') + author = 'Kovid Goyal' + supported_platforms = ['windows', 'linux', 'osx'] + FORMATS = ['epub', 'pdf'] + + VENDOR_ID = [0x18d1] + PRODUCT_ID = [0xb004] + BCD = [0x224] + + VENDOR_NAME = 'ANDROID' + WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = '__UMS_COMPOSITE' + + EBOOK_DIR_MAIN = 'eBooks' + SUPPORTS_SUB_DIRS = False + diff --git a/src/calibre/devices/nokia/driver.py b/src/calibre/devices/nokia/driver.py index 66a4243f2b..f378a656fb 100644 --- a/src/calibre/devices/nokia/driver.py +++ b/src/calibre/devices/nokia/driver.py @@ -67,3 +67,24 @@ class E71X(USBMS): VENDOR_NAME = 'NOKIA' WINDOWS_MAIN_MEM = 'S60' +class E52(USBMS): + + name = 'Nokia E52 device interface' + gui_name = 'Nokia E52' + description = _('Communicate with the Nokia E52') + author = 'David Ignjic' + supported_platforms = ['windows', 'linux', 'osx'] + + VENDOR_ID = [0x421] + PRODUCT_ID = [0x1CD] + BCD = [0x100] + + + FORMATS = ['mobi', 'prc'] + + EBOOK_DIR_MAIN = 'eBooks' + SUPPORTS_SUB_DIRS = True + + VENDOR_NAME = 'NOKIA' + WINDOWS_MAIN_MEM = 'S60' + diff --git a/src/calibre/devices/prs505/driver.py b/src/calibre/devices/prs505/driver.py index 5860826778..c55936be2d 100644 --- a/src/calibre/devices/prs505/driver.py +++ b/src/calibre/devices/prs505/driver.py @@ -99,7 +99,7 @@ class PRS505(USBMS): if self._card_b_prefix is not None: if not write_cache(self._card_b_prefix): self._card_b_prefix = None - + self.booklist_class.rebuild_collections = self.rebuild_collections def get_device_information(self, end_session=True): return (self.gui_name, '', '', '') @@ -145,7 +145,7 @@ class PRS505(USBMS): blists[i] = booklists[i] opts = self.settings() if opts.extra_customization: - collections = [x.strip() for x in + collections = [x.lower().strip() for x in opts.extra_customization.split(',')] else: collections = [] @@ -156,4 +156,10 @@ class PRS505(USBMS): USBMS.sync_booklists(self, booklists, end_session=end_session) debug_print('PRS505: finished sync_booklists') + def rebuild_collections(self, booklist, oncard): + debug_print('PRS505: started rebuild_collections on card', oncard) + c = self.initialize_XML_cache() + c.rebuild_collections(booklist, {'carda':1, 'cardb':2}.get(oncard, 0)) + c.write() + debug_print('PRS505: finished rebuild_collections') diff --git a/src/calibre/devices/prs505/sony_cache.py b/src/calibre/devices/prs505/sony_cache.py index e7d0e4686c..b87ca937bc 100644 --- a/src/calibre/devices/prs505/sony_cache.py +++ b/src/calibre/devices/prs505/sony_cache.py @@ -6,10 +6,8 @@ __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' import os, time -from pprint import pprint from base64 import b64decode from uuid import uuid4 - from lxml import etree from calibre import prints, guess_type @@ -62,8 +60,7 @@ class XMLCache(object): def __init__(self, paths, prefixes, use_author_sort): if DEBUG: - debug_print('Building XMLCache...') - pprint(paths) + debug_print('Building XMLCache...', paths) self.paths = paths self.prefixes = prefixes self.use_author_sort = use_author_sort @@ -147,39 +144,73 @@ class XMLCache(object): if title+str(i) not in seen: title = title+str(i) playlist.set('title', title) + seen.add(title) break else: seen.add(title) - def get_playlist_map(self): - debug_print('Start get_playlist_map') - ans = {} + def build_id_playlist_map(self, bl_index): + ''' + Return a map of the collections in books: {lpaths: [collection names]} + ''' + debug_print('Start build_id_playlist_map') self.ensure_unique_playlist_titles() - debug_print('after ensure_unique_playlist_titles') self.prune_empty_playlists() - debug_print('get_playlist_map loop') - for i, root in self.record_roots.items(): - debug_print('get_playlist_map loop', i) - id_map = self.build_id_map(root) - ans[i] = [] - for playlist in root.xpath('//*[local-name()="playlist"]'): - items = [] - for item in playlist: - id_ = item.get('id', None) - record = id_map.get(id_, None) - if record is not None: - items.append(record) - ans[i].append((playlist.get('title'), items)) - debug_print('end get_playlist_map') - return ans + debug_print('after cleaning playlists') + root = self.record_roots[bl_index] + if root is None: + return + id_map = self.build_id_map(root) + playlist_map = {} + # foreach playlist, get the lpaths for the ids in it, then add to dict + for playlist in root.xpath('//*[local-name()="playlist"]'): + name = playlist.get('title') + if name is None: + debug_print('build_id_playlist_map: unnamed playlist!') + continue + for item in playlist: + # translate each id into its lpath + id_ = item.get('id', None) + if id_ is None: + debug_print('build_id_playlist_map: id_ is None!') + continue + bk = id_map.get(id_, None) + if bk is None: + debug_print('build_id_playlist_map: book is None!', id_) + continue + lpath = bk.get('path', None) + if lpath is None: + debug_print('build_id_playlist_map: lpath is None!', id_) + continue + if lpath not in playlist_map: + playlist_map[lpath] = [] + playlist_map[lpath].append(name) + debug_print('Finish build_id_playlist_map. Found', len(playlist_map)) + return playlist_map + + def reset_existing_playlists_map(self): + ''' + Call this method before calling get_or_create_playlist in the context of + a given job. Call it again after deleting any playlists. The current + implementation adds all new playlists before deleting any, so that + constraint is respected. + ''' + self._playlist_to_playlist_id_map = {} def get_or_create_playlist(self, bl_idx, title): + # maintain a private map of playlists to their ids. Don't check if it + # exists, because reset_existing_playlist_map must be called before it + # is used to ensure that deleted playlists are taken into account root = self.record_roots[bl_idx] - for playlist in root.xpath('//*[local-name()="playlist"]'): - if playlist.get('title', None) == title: - return playlist - if DEBUG: - debug_print('Creating playlist:', title) + if bl_idx not in self._playlist_to_playlist_id_map: + self._playlist_to_playlist_id_map[bl_idx] = {} + for playlist in root.xpath('//*[local-name()="playlist"]'): + pl_title = playlist.get('title', None) + if pl_title is not None: + self._playlist_to_playlist_id_map[bl_idx][pl_title] = playlist + if title in self._playlist_to_playlist_id_map[bl_idx]: + return self._playlist_to_playlist_id_map[bl_idx][title] + debug_print('Creating playlist:', title) ans = root.makeelement('{%s}playlist'%self.namespaces[bl_idx], nsmap=root.nsmap, attrib={ 'uuid' : uuid(), @@ -188,12 +219,12 @@ class XMLCache(object): 'sourceid': '1' }) root.append(ans) + self._playlist_to_playlist_id_map[bl_idx][title] = ans return ans # }}} def fix_ids(self): # {{{ - if DEBUG: - debug_print('Running fix_ids()') + debug_print('Running fix_ids()') def ensure_numeric_ids(root): idmap = {} @@ -251,7 +282,9 @@ class XMLCache(object): ensure_media_xml_base_ids(root) idmap = ensure_numeric_ids(root) - remap_playlist_references(root, idmap) + if len(idmap) > 0: + debug_print('fix_ids: found some non-numeric ids') + remap_playlist_references(root, idmap) if i == 0: sourceid, playlist_sid = 1, 0 base = 0 @@ -276,38 +309,19 @@ class XMLCache(object): def update_booklist(self, bl, bl_index): if bl_index not in self.record_roots: return - if DEBUG: - debug_print('Updating JSON cache:', bl_index) + debug_print('Updating JSON cache:', bl_index) + playlist_map = self.build_id_playlist_map(bl_index) root = self.record_roots[bl_index] - pmap = self.get_playlist_map()[bl_index] - playlist_map = {} - for title, records in pmap: - for record in records: - path = record.get('path', None) - if path: - if path not in playlist_map: - playlist_map[path] = [] - playlist_map[path].append(title) - lpath_map = self.build_lpath_map(root) for book in bl: record = lpath_map.get(book.lpath, None) if record is not None: title = record.get('title', None) if title is not None and title != book.title: - if DEBUG: - debug_print('Renaming title', book.title, 'to', title) + debug_print('Renaming title', book.title, 'to', title) book.title = title -# We shouldn't do this for Sonys, because the reader strips -# all but the first author. -# authors = record.get('author', None) -# if authors is not None: -# authors = string_to_authors(authors) -# if authors != book.authors: -# if DEBUG: -# prints('Renaming authors', book.authors, 'to', -# authors) -# book.authors = authors + # Don't set the author, because the reader strips all but + # the first author. for thumbnail in record.xpath( 'descendant::*[local-name()="thumbnail"]'): for img in thumbnail.xpath( @@ -318,47 +332,57 @@ class XMLCache(object): book.thumbnail = raw break break - if book.lpath in playlist_map: - tags = playlist_map[book.lpath] - book.device_collections = tags + book.device_collections = playlist_map.get(book.lpath, []) debug_print('Finished updating JSON cache:', bl_index) # }}} # Update XML from JSON {{{ def update(self, booklists, collections_attributes): - debug_print('Starting update XML from JSON') - playlist_map = self.get_playlist_map() - + debug_print('Starting update', collections_attributes) for i, booklist in booklists.items(): - if DEBUG: - debug_print('Updating XML Cache:', i) + playlist_map = self.build_id_playlist_map(i) + debug_print('Updating XML Cache:', i) root = self.record_roots[i] lpath_map = self.build_lpath_map(root) + gtz_count = ltz_count = 0 for book in booklist: path = os.path.join(self.prefixes[i], *(book.lpath.split('/'))) -# record = self.book_by_lpath(book.lpath, root) record = lpath_map.get(book.lpath, None) if record is None: record = self.create_text_record(root, i, book.lpath) - self.update_text_record(record, book, path, i) - - bl_pmap = playlist_map[i] - self.update_playlists(i, root, booklist, bl_pmap, - collections_attributes) + (gtz_count, ltz_count) = self.update_text_record(record, book, + path, i, gtz_count, ltz_count) + # Ensure the collections in the XML database are recorded for + # this book + if book.device_collections is None: + book.device_collections = [] + book.device_collections = playlist_map.get(book.lpath, []) + debug_print('Timezone votes: %d GMT, %d LTZ'%(gtz_count, ltz_count)) + self.update_playlists(i, root, booklist, collections_attributes) + # Update the device collections because update playlist could have added + # some new ones. + debug_print('In update/ Starting refresh of device_collections') + for i, booklist in booklists.items(): + playlist_map = self.build_id_playlist_map(i) + for book in booklist: + book.device_collections = playlist_map.get(book.lpath, []) + self.fix_ids() + debug_print('Finished update') + def rebuild_collections(self, booklist, bl_index): + if bl_index not in self.record_roots: + return + root = self.record_roots[bl_index] + self.update_playlists(bl_index, root, booklist, []) self.fix_ids() - # This is needed to update device_collections - for i, booklist in booklists.items(): - self.update_booklist(booklist, i) - debug_print('Finished update XML from JSON') - - def update_playlists(self, bl_index, root, booklist, playlist_map, - collections_attributes): - debug_print('Starting update_playlists') + def update_playlists(self, bl_index, root, booklist, collections_attributes): + debug_print('Starting update_playlists', collections_attributes, bl_index) + self.reset_existing_playlists_map() collections = booklist.get_collections(collections_attributes) lpath_map = self.build_lpath_map(root) + debug_print('update_playlists: finished building maps') for category, books in collections.items(): records = [lpath_map.get(b.lpath, None) for b in books] # Remove any books that were not found, although this @@ -367,25 +391,34 @@ class XMLCache(object): debug_print('WARNING: Some elements in the JSON cache were not' ' found in the XML cache') records = [x for x in records if x is not None] + # Ensure each book has an ID. for rec in records: if rec.get('id', None) is None: rec.set('id', str(self.max_id(root)+1)) ids = [x.get('id', None) for x in records] + # Given that we set the ids, there shouldn't be any None's. But + # better to be safe... if None in ids: - if DEBUG: - debug_print('WARNING: Some elements do not have ids') - ids = [x for x in ids if x is not None] + debug_print('WARNING: Some elements do not have ids') + ids = [x for x in ids if x is not None] playlist = self.get_or_create_playlist(bl_index, category) + # Get the books currently in the playlist. We will need them to be + # sure to put back any books that were manually added. playlist_ids = [] for item in playlist: id_ = item.get('id', None) if id_ is not None: playlist_ids.append(id_) + # Empty the playlist. We do this so that the playlist will have the + # order specified by get_collections for item in list(playlist): playlist.remove(item) + # Get a list of ids not known by get_collections extra_ids = [x for x in playlist_ids if x not in ids] + # Rebuild the collection in the order specified by get_collections. Then + # add the ids that get_collections didn't know about. for id_ in ids + extra_ids: item = playlist.makeelement( '{%s}item'%self.namespaces[bl_index], @@ -423,11 +456,38 @@ class XMLCache(object): root.append(ans) return ans - def update_text_record(self, record, book, path, bl_index): + def update_text_record(self, record, book, path, bl_index, gtz_count, ltz_count): + ''' + Update the Sony database from the book. This is done if the timestamp in + the db differs from the timestamp on the file. + ''' + + # It seems that a Sony device can sometimes know what timezone it is in, + # and apparently converts the dates to GMT when it writes them to the + # db. Unfortunately, we can't tell when it does this, so we use a + # horrible heuristic. First, set dates only for new books, trying to + # avoid upsetting the sony. Use the timezone determined through the + # voting described next. Second, voting: if a book is not new, compare + # its Sony DB date against localtime and gmtime. Count the matches. When + # we must set a date, use the one with the most matches. Use localtime + # if the case of a tie, and hope it is right. timestamp = os.path.getmtime(path) - date = strftime(timestamp) - if date != record.get('date', None): + rec_date = record.get('date', None) + if not getattr(book, '_new_book', False): # book is not new + if strftime(timestamp, zone=time.gmtime) == rec_date: + gtz_count += 1 + elif strftime(timestamp, zone=time.localtime) == rec_date: + ltz_count += 1 + else: # book is new. Set the time using the current votes + if ltz_count >= gtz_count: + tz = time.localtime + debug_print("Using localtime TZ for new book", book.lpath) + else: + tz = time.gmtime + debug_print("Using GMT TZ for new book", book.lpath) + date = strftime(timestamp, zone=tz) record.set('date', date) + record.set('size', str(os.stat(path).st_size)) title = book.title if book.title else _('Unknown') record.set('title', title) @@ -452,6 +512,7 @@ class XMLCache(object): if 'id' not in record.attrib: num = self.max_id(record.getroottree().getroot()) record.set('id', str(num+1)) + return (gtz_count, ltz_count) # }}} # Writing the XML files {{{ @@ -544,10 +605,5 @@ class XMLCache(object): break self.namespaces[i] = ns -# if DEBUG: -# debug_print('Found nsmaps:') -# pprint(self.nsmaps) -# debug_print('Found namespaces:') -# pprint(self.namespaces) # }}} diff --git a/src/calibre/devices/scanner.py b/src/calibre/devices/scanner.py index ceba5d37d0..dd789dd668 100644 --- a/src/calibre/devices/scanner.py +++ b/src/calibre/devices/scanner.py @@ -98,6 +98,9 @@ class LinuxScanner(object): def __call__(self): ans = set([]) + if not self.ok: + raise RuntimeError('DeviceScanner requires the /sys filesystem to work.') + for x in os.listdir(self.base): base = os.path.join(self.base, x) ven = os.path.join(base, 'idVendor') @@ -145,8 +148,6 @@ class DeviceScanner(object): def __init__(self, *args): if isosx and osx_scanner is None: raise RuntimeError('The Python extension usbobserver must be available on OS X.') - if islinux and not linux_scanner.ok: - raise RuntimeError('DeviceScanner requires the /sys filesystem to work.') self.scanner = win_scanner if iswindows else osx_scanner if isosx else linux_scanner self.devices = [] diff --git a/src/calibre/devices/usbms/books.py b/src/calibre/devices/usbms/books.py index be154f35c1..6394626a9f 100644 --- a/src/calibre/devices/usbms/books.py +++ b/src/calibre/devices/usbms/books.py @@ -11,10 +11,11 @@ from calibre.devices.mime import mime_type_ext from calibre.devices.interface import BookList as _BookList from calibre.constants import filesystem_encoding, preferred_encoding from calibre import isbytestring +from calibre.utils.config import prefs class Book(MetaInformation): - BOOK_ATTRS = ['lpath', 'size', 'mime', 'device_collections'] + BOOK_ATTRS = ['lpath', 'size', 'mime', 'device_collections', '_new_book'] JSON_ATTRS = [ 'lpath', 'title', 'authors', 'mime', 'size', 'tags', 'author_sort', @@ -29,6 +30,7 @@ class Book(MetaInformation): MetaInformation.__init__(self, '') + self._new_book = False self.device_collections = [] self.path = os.path.join(prefix, lpath) if os.sep == '\\': @@ -76,7 +78,7 @@ class Book(MetaInformation): in C{other} takes precedence, unless the information in C{other} is NULL. ''' - MetaInformation.smart_update(self, other) + MetaInformation.smart_update(self, other, replace_tags=True) for attr in self.BOOK_ATTRS: if hasattr(other, attr): @@ -130,12 +132,37 @@ class CollectionsBookList(BookList): return True def get_collections(self, collection_attributes): + from calibre.devices.usbms.driver import debug_print + debug_print('Starting get_collections:', prefs['manage_device_metadata']) collections = {} series_categories = set([]) - collection_attributes = list(collection_attributes)+['device_collections'] - for attr in collection_attributes: - attr = attr.strip() - for book in self: + # This map of sets is used to avoid linear searches when testing for + # book equality + collections_lpaths = {} + for book in self: + # Make sure we can identify this book via the lpath + lpath = getattr(book, 'lpath', None) + if lpath is None: + continue + # Decide how we will build the collections. The default: leave the + # book in all existing collections. Do not add any new ones. + attrs = ['device_collections'] + if getattr(book, '_new_book', False): + if prefs['manage_device_metadata'] == 'manual': + # Ensure that the book is in all the book's existing + # collections plus all metadata collections + attrs += collection_attributes + else: + # For new books, both 'on_send' and 'on_connect' do the same + # thing. The book's existing collections are ignored. Put + # the book in collections defined by its metadata. + attrs = collection_attributes + elif prefs['manage_device_metadata'] == 'on_connect': + # For existing books, modify the collections only if the user + # specified 'on_connect' + attrs = collection_attributes + for attr in attrs: + attr = attr.strip() val = getattr(book, attr, None) if not val: continue if isbytestring(val): @@ -150,11 +177,12 @@ class CollectionsBookList(BookList): continue if category not in collections: collections[category] = [] - if book not in collections[category]: + collections_lpaths[category] = set() + if lpath not in collections_lpaths[category]: + collections_lpaths[category].add(lpath) collections[category].append(book) - if attr == 'series': - series_categories.add(category) - + if attr == 'series': + series_categories.add(category) # Sort collections for category, books in collections.items(): def tgetter(x): @@ -167,3 +195,15 @@ class CollectionsBookList(BookList): books.sort(cmp=lambda x,y:cmp(getter(x), getter(y))) return collections + def rebuild_collections(self, booklist, oncard): + ''' + For each book in the booklist for the card oncard, remove it from all + its current collections, then add it to the collections specified in + device_collections. + + oncard is None for the main memory, carda for card A, cardb for card B, + etc. + + booklist is the object created by the :method:`books` call above. + ''' + pass diff --git a/src/calibre/devices/usbms/device.py b/src/calibre/devices/usbms/device.py index d899c8e995..c07b7fd761 100644 --- a/src/calibre/devices/usbms/device.py +++ b/src/calibre/devices/usbms/device.py @@ -78,9 +78,6 @@ class Device(DeviceConfig, DevicePlugin): STORAGE_CARD_VOLUME_LABEL = '' STORAGE_CARD2_VOLUME_LABEL = None - SUPPORTS_SUB_DIRS = False - MUST_READ_METADATA = False - SUPPORTS_USE_AUTHOR_SORT = False EBOOK_DIR_MAIN = '' EBOOK_DIR_CARD_A = '' @@ -735,7 +732,7 @@ class Device(DeviceConfig, DevicePlugin): traceback.print_exc() self._main_prefix = self._card_a_prefix = self._card_b_prefix = None - def get_main_ebook_dir(self): + def get_main_ebook_dir(self, for_upload=False): return self.EBOOK_DIR_MAIN def _sanity_check(self, on_card, files): @@ -753,7 +750,7 @@ class Device(DeviceConfig, DevicePlugin): path = os.path.join(self._card_b_prefix, *(self.EBOOK_DIR_CARD_B.split('/'))) else: - candidates = self.get_main_ebook_dir() + candidates = self.get_main_ebook_dir(for_upload=True) if isinstance(candidates, basestring): candidates = [candidates] candidates = [ diff --git a/src/calibre/devices/usbms/deviceconfig.py b/src/calibre/devices/usbms/deviceconfig.py index 5edefff743..e074387175 100644 --- a/src/calibre/devices/usbms/deviceconfig.py +++ b/src/calibre/devices/usbms/deviceconfig.py @@ -13,6 +13,10 @@ class DeviceConfig(object): EXTRA_CUSTOMIZATION_MESSAGE = None EXTRA_CUSTOMIZATION_DEFAULT = None + SUPPORTS_SUB_DIRS = False + MUST_READ_METADATA = False + SUPPORTS_USE_AUTHOR_SORT = False + #: If None the default is used SAVE_TEMPLATE = None @@ -23,9 +27,14 @@ class DeviceConfig(object): config().parse().send_template @classmethod - def _config(cls): + def _config_base_name(cls): klass = cls if isinstance(cls, type) else cls.__class__ - c = Config('device_drivers_%s' % klass.__name__, _('settings for device drivers')) + return klass.__name__ + + @classmethod + def _config(cls): + name = cls._config_base_name() + c = Config('device_drivers_%s' % name, _('settings for device drivers')) c.add_opt('format_map', default=cls.FORMATS, help=_('Ordered list of formats the device will accept')) c.add_opt('use_subdirs', default=True, diff --git a/src/calibre/devices/usbms/driver.py b/src/calibre/devices/usbms/driver.py index 2fc8b0d814..73a329be58 100644 --- a/src/calibre/devices/usbms/driver.py +++ b/src/calibre/devices/usbms/driver.py @@ -58,7 +58,7 @@ class USBMS(CLI, Device): debug_print ('USBMS: Fetching list of books from device. oncard=', oncard) - dummy_bl = BookList(None, None, None) + dummy_bl = self.booklist_class(None, None, None) if oncard == 'carda' and not self._card_a_prefix: self.report_progress(1.0, _('Getting list of books on device...')) @@ -78,6 +78,8 @@ class USBMS(CLI, Device): self.EBOOK_DIR_CARD_B if oncard == 'cardb' else \ self.get_main_ebook_dir() + debug_print ('USBMS: dirs are:', prefix, ebook_dirs) + # get the metadata cache bl = self.booklist_class(oncard, prefix, self.settings) need_sync = self.parse_metadata_cache(bl, prefix, self.METADATA_CACHE) @@ -233,6 +235,7 @@ class USBMS(CLI, Device): book = self.book_class(prefix, lpath, other=info) if book.size is None: book.size = os.stat(self.normalize_path(path)).st_size + book._new_book = True # Must be before add_book booklists[blist].add_book(book, replace_metadata=True) self.report_progress(1.0, _('Adding books to device metadata listing...')) debug_print('USBMS: finished adding metadata') @@ -273,6 +276,9 @@ class USBMS(CLI, Device): self.report_progress(1.0, _('Removing books from device metadata listing...')) debug_print('USBMS: finished removing metadata for %d books'%(len(paths))) + # If you override this method and you use book._new_book, then you must + # complete the processing before you call this method. The flag is cleared + # at the end just before the return def sync_booklists(self, booklists, end_session=True): debug_print('USBMS: starting sync_booklists') @@ -286,11 +292,18 @@ class USBMS(CLI, Device): js = [item.to_json() for item in booklists[listid] if hasattr(item, 'to_json')] with open(self.normalize_path(os.path.join(prefix, self.METADATA_CACHE)), 'wb') as f: - json.dump(js, f, indent=2, encoding='utf-8') + f.write(json.dumps(js, indent=2, encoding='utf-8')) write_prefix(self._main_prefix, 0) write_prefix(self._card_a_prefix, 1) write_prefix(self._card_b_prefix, 2) + # Clear the _new_book indication, as we are supposed to be done with + # adding books at this point + for blist in booklists: + if blist is not None: + for book in blist: + book._new_book = False + self.report_progress(1.0, _('Sending metadata to device...')) debug_print('USBMS: finished sync_booklists') diff --git a/src/calibre/ebooks/chm/input.py b/src/calibre/ebooks/chm/input.py index a3a49296d2..e3c3deba78 100644 --- a/src/calibre/ebooks/chm/input.py +++ b/src/calibre/ebooks/chm/input.py @@ -49,7 +49,6 @@ class CHMInput(InputFormatPlugin): log.debug('stream.name=%s' % stream.name) mainname = self._chmtohtml(tdir, chm_name, no_images, log) mainpath = os.path.join(tdir, mainname) - #raw_input() metadata = get_metadata_from_reader(self._chm_reader) @@ -92,7 +91,7 @@ class CHMInput(InputFormatPlugin): metadata.add('identifier', mi.isbn, attrib={'scheme':'ISBN'}) if not metadata.language: oeb.logger.warn(u'Language not specified') - metadata.add('language', get_lang()) + metadata.add('language', get_lang().replace('_', '-')) if not metadata.creator: oeb.logger.warn('Creator not specified') metadata.add('creator', _('Unknown')) @@ -141,10 +140,9 @@ class CHMInput(InputFormatPlugin): log.debug('Found %d section nodes' % len(chapters)) htmlpath = os.path.splitext(hhcpath)[0] + ".html" f = open(htmlpath, 'wb') - f.write('\n') - if chapters: + f.write('\n') path0 = chapters[0][1] subpath = os.path.dirname(path0) @@ -158,7 +156,9 @@ class CHMInput(InputFormatPlugin): url = url.encode('utf-8') f.write(url) - f.write("") + f.write("") + else: + f.write(hhcdata) f.close() return htmlpath diff --git a/src/calibre/ebooks/chm/reader.py b/src/calibre/ebooks/chm/reader.py index d0a81e8e7f..67a2d36607 100644 --- a/src/calibre/ebooks/chm/reader.py +++ b/src/calibre/ebooks/chm/reader.py @@ -8,7 +8,7 @@ import os, re from mimetypes import guess_type as guess_mimetype from calibre.ebooks.BeautifulSoup import BeautifulSoup, NavigableString -from calibre.constants import iswindows +from calibre.constants import iswindows, filesystem_encoding from calibre.utils.chm.chm import CHMFile from calibre.utils.chm.chmlib import ( CHM_RESOLVE_SUCCESS, CHM_ENUMERATE_NORMAL, @@ -78,6 +78,8 @@ class CHMError(Exception): class CHMReader(CHMFile): def __init__(self, input, log): CHMFile.__init__(self) + if isinstance(input, unicode): + input = input.encode(filesystem_encoding) if not self.LoadCHM(input): raise CHMError("Unable to open CHM file '%s'"%(input,)) self.log = log @@ -91,7 +93,6 @@ class CHMReader(CHMFile): self.root, ext = os.path.splitext(self.topics.lstrip('/')) self.hhc_path = self.root + ".hhc" - def _parse_toc(self, ul, basedir=os.getcwdu()): toc = TOC(play_order=self._playorder, base_path=basedir, text='') self._playorder += 1 @@ -152,6 +153,8 @@ class CHMReader(CHMFile): if f.lower() == self.hhc_path.lower(): self.hhc_path = f break + if self.hhc_path not in files and files: + self.hhc_path = files[0] def _reformat(self, data): try: @@ -159,7 +162,7 @@ class CHMReader(CHMFile): soup = BeautifulSoup(data) except ValueError: # hit some strange encoding problems... - print "Unable to parse html for cleaning, leaving it :(" + self.log.exception("Unable to parse html for cleaning, leaving it") return data # nuke javascript... [s.extract() for s in soup('script')] diff --git a/src/calibre/ebooks/compression/palmdoc.c b/src/calibre/ebooks/compression/palmdoc.c index b85a404eb6..4d913dfd2b 100644 --- a/src/calibre/ebooks/compression/palmdoc.c +++ b/src/calibre/ebooks/compression/palmdoc.c @@ -151,6 +151,7 @@ cpalmdoc_do_compress(buffer *b, char *output) { for (j=0; j < temp.len; j++) *(output++) = (char)temp.data[j]; } } + PyMem_Free(temp.data); return output - head; } @@ -168,7 +169,9 @@ cpalmdoc_compress(PyObject *self, PyObject *args) { for (j = 0; j < input_len; j++) b.data[j] = (_input[j] < 0) ? _input[j]+256 : _input[j]; b.len = input_len; - output = (char *)PyMem_Malloc(sizeof(char) * b.len); + // Make the output buffer larger than the input as sometimes + // compression results in a larger block + output = (char *)PyMem_Malloc(sizeof(char) * (int)(1.25*b.len)); if (output == NULL) return PyErr_NoMemory(); j = cpalmdoc_do_compress(&b, output); if ( j == 0) return PyErr_NoMemory(); diff --git a/src/calibre/ebooks/conversion/preprocess.py b/src/calibre/ebooks/conversion/preprocess.py index 7a7f362169..3a18d38b22 100644 --- a/src/calibre/ebooks/conversion/preprocess.py +++ b/src/calibre/ebooks/conversion/preprocess.py @@ -25,13 +25,13 @@ convert_entities = functools.partial(entity_to_unicode, _span_pat = re.compile('', re.DOTALL|re.IGNORECASE) LIGATURES = { - u'\u00c6': u'AE', - u'\u00e6': u'ae', - u'\u0152': u'OE', - u'\u0153': u'oe', - u'\u0132': u'IJ', - u'\u0133': u'ij', - u'\u1D6B': u'ue', +# u'\u00c6': u'AE', +# u'\u00e6': u'ae', +# u'\u0152': u'OE', +# u'\u0153': u'oe', +# u'\u0132': u'IJ', +# u'\u0133': u'ij', +# u'\u1D6B': u'ue', u'\uFB00': u'ff', u'\uFB01': u'fi', u'\uFB02': u'fl', @@ -107,9 +107,21 @@ class CSSPreProcessor(object): PAGE_PAT = re.compile(r'@page[^{]*?{[^}]*?}') - def __call__(self, data): + def __call__(self, data, add_namespace=False): + from calibre.ebooks.oeb.base import XHTML_CSS_NAMESPACE data = self.PAGE_PAT.sub('', data) - return data + if not add_namespace: + return data + ans, namespaced = [], False + for line in data.splitlines(): + ll = line.lstrip() + if not (namespaced or ll.startswith('@import') or + ll.startswith('@charset')): + ans.append(XHTML_CSS_NAMESPACE.strip()) + namespaced = True + ans.append(line) + + return u'\n'.join(ans) class HTMLPreProcessor(object): @@ -268,7 +280,7 @@ class HTMLPreProcessor(object): if getattr(self.extra_opts, 'remove_footer', None): try: - rules.insert(0 + rules.insert(0, (re.compile(self.extra_opts.footer_regex), lambda match : '') ) except: diff --git a/src/calibre/ebooks/epub/fix/__init__.py b/src/calibre/ebooks/epub/fix/__init__.py new file mode 100644 index 0000000000..5bdbd7c7f6 --- /dev/null +++ b/src/calibre/ebooks/epub/fix/__init__.py @@ -0,0 +1,58 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + + +from calibre.customize import Plugin + +class InvalidEpub(ValueError): + pass + +class ePubFixer(Plugin): + + supported_platforms = ['windows', 'osx', 'linux'] + author = 'Kovid Goyal' + type = _('ePub Fixer') + can_be_disabled = True + + # API that subclasses must implement {{{ + @property + def short_description(self): + raise NotImplementedError + + @property + def long_description(self): + raise NotImplementedError + + @property + def fix_name(self): + raise NotImplementedError + + @property + def options(self): + ''' + Return a list of 4-tuples + (option_name, type, default, help_text) + type is one of 'bool', 'int', 'string' + ''' + return [] + + def run(self, container, opts, log, fix=False): + raise NotImplementedError + # }}} + + def add_options_to_parser(self, parser): + parser.add_option('--' + self.fix_name.replace('_', '-'), + help=self.long_description, action='store_true', default=False) + for option in self.options: + action = 'store' + if option[1] == 'bool': + action = 'store_true' + kwargs = {'action': action, 'default':option[2], 'help':option[3]} + if option[1] != 'bool': + kwargs['type'] = option[1] + parser.add_option('--'+option[0].replace('_', '-'), **kwargs) + diff --git a/src/calibre/ebooks/epub/fix/container.py b/src/calibre/ebooks/epub/fix/container.py new file mode 100644 index 0000000000..b9af66d708 --- /dev/null +++ b/src/calibre/ebooks/epub/fix/container.py @@ -0,0 +1,200 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +import os, posixpath, urllib, sys, re + +from lxml import etree + +from calibre.ebooks.epub.fix import InvalidEpub +from calibre import guess_type, prepare_string_for_xml +from calibre.ebooks.chardet import xml_to_unicode +from calibre.constants import iswindows +from calibre.utils.zipfile import ZipFile, ZIP_STORED + +exists, join = os.path.exists, os.path.join + +OCF_NS = 'urn:oasis:names:tc:opendocument:xmlns:container' +OPF_NS = 'http://www.idpf.org/2007/opf' + +class Container(object): + + META_INF = { + 'container.xml' : True, + 'manifest.xml' : False, + 'encryption.xml' : False, + 'metadata.xml' : False, + 'signatures.xml' : False, + 'rights.xml' : False, + } + + def __init__(self, path, log): + self.root = os.path.abspath(path) + self.log = log + self.dirtied = set([]) + self.cache = {} + self.mime_map = {} + + if exists(join(self.root, 'mimetype')): + os.remove(join(self.root, 'mimetype')) + + container_path = join(self.root, 'META-INF', 'container.xml') + if not exists(container_path): + raise InvalidEpub('No META-INF/container.xml in epub') + self.container = etree.fromstring(open(container_path, 'rb').read()) + opf_files = self.container.xpath(( + r'child::ocf:rootfiles/ocf:rootfile' + '[@media-type="%s" and @full-path]'%guess_type('a.opf')[0] + ), namespaces={'ocf':OCF_NS} + ) + if not opf_files: + raise InvalidEpub('META-INF/container.xml contains no link to OPF file') + opf_path = os.path.join(self.root, + *opf_files[0].get('full-path').split('/')) + if not exists(opf_path): + raise InvalidEpub('OPF file does not exist at location pointed to' + ' by META-INF/container.xml') + + # Map of relative paths with / separators to absolute + # paths on filesystem with os separators + self.name_map = {} + for dirpath, dirnames, filenames in os.walk(self.root): + for f in filenames: + path = join(dirpath, f) + name = os.path.relpath(path, self.root).replace(os.sep, '/') + self.name_map[name] = path + if path == opf_path: + self.opf_name = name + self.mime_map[name] = guess_type('a.opf')[0] + + for item in self.opf.xpath( + '//opf:manifest/opf:item[@href and @media-type]', + namespaces={'opf':OPF_NS}): + href = item.get('href') + self.mime_map[self.href_to_name(href, + posixpath.dirname(self.opf_name))] = item.get('media-type') + + def manifest_worthy_names(self): + for name in self.name_map: + if name.endswith('.opf'): continue + if name.startswith('META-INF') and \ + posixpath.basename(name) in self.META_INF: continue + yield name + + def delete_name(self, name): + self.mime_map.pop(name, None) + path = self.name_map[name] + os.remove(path) + self.name_map.pop(name) + + def manifest_item_for_name(self, name): + href = self.name_to_href(name, + posixpath.dirname(self.opf_name)) + q = prepare_string_for_xml(href, attribute=True) + existing = self.opf.xpath('//opf:manifest/opf:item[@href="%s"]'%q, + namespaces={'opf':OPF_NS}) + if not existing: + return None + return existing[0] + + def add_name_to_manifest(self, name): + item = self.manifest_item_for_name(name) + if item is not None: + return + manifest = self.opf.xpath('//opf:manifest', namespaces={'opf':OPF_NS})[0] + item = manifest.makeelement('{%s}item'%OPF_NS, nsmap={'opf':OPF_NS}, + href=self.name_to_href(name, posixpath.dirname(self.opf_name)), + id=self.generate_manifest_id()) + mt = guess_type(posixpath.basename(name))[0] + if not mt: + mt = 'application/octest-stream' + item.set('media-type', mt) + manifest.append(item) + + def generate_manifest_id(self): + items = self.opf.xpath('//opf:manifest/opf:item[@id]', + namespaces={'opf':OPF_NS}) + ids = set([x.get('id') for x in items]) + for x in xrange(sys.maxint): + c = 'id%d'%x + if c not in ids: + return c + + @property + def opf(self): + return self.get(self.opf_name) + + def href_to_name(self, href, base=''): + href = urllib.unquote(href.partition('#')[0]) + name = href + if base: + name = posixpath.join(base, href) + return name + + def name_to_href(self, name, base): + if not base: + return name + return posixpath.relpath(name, base) + + def get_raw(self, name): + path = self.name_map[name] + return open(path, 'rb').read() + + def get(self, name): + if name in self.cache: + return self.cache[name] + raw = self.get_raw(name) + if name in self.mime_map: + raw = self._parse(raw, self.mime_map[name]) + self.cache[name] = raw + return raw + + def set(self, name, val): + self.cache[name] = val + self.dirtied.add(name) + + def _parse(self, raw, mimetype): + mt = mimetype.lower() + if mt.endswith('+xml'): + parser = etree.XMLParser(no_network=True, huge_tree=not iswindows) + raw = xml_to_unicode(raw, + strip_encoding_pats=True, assume_utf8=True, + resolve_entities=True)[0].strip() + idx = raw.find(' -1: + pre = raw[:idx] + raw = raw[idx:] + if ']+)', pre): + val = match.group(2) + if val.startswith('"') and val.endswith('"'): + val = val[1:-1] + user_entities[match.group(1)] = val + if user_entities: + pat = re.compile(r'&(%s);'%('|'.join(user_entities.keys()))) + raw = pat.sub(lambda m:user_entities[m.group(1)], raw) + return etree.fromstring(raw, parser=parser) + return raw + + def write(self, path): + for name in self.dirtied: + data = self.cache[name] + raw = data + if hasattr(data, 'xpath'): + raw = etree.tostring(data, encoding='utf-8', + xml_declaration=True) + with open(self.name_map[name], 'wb') as f: + f.write(raw) + self.dirtied.clear() + zf = ZipFile(path, 'w') + zf.writestr('mimetype', bytes(guess_type('a.epub')[0]), + compression=ZIP_STORED) + zf.add_dir(self.root) + zf.close() + diff --git a/src/calibre/ebooks/epub/fix/epubcheck.py b/src/calibre/ebooks/epub/fix/epubcheck.py new file mode 100644 index 0000000000..fd913a654b --- /dev/null +++ b/src/calibre/ebooks/epub/fix/epubcheck.py @@ -0,0 +1,82 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +from calibre.ebooks.epub.fix import ePubFixer, InvalidEpub +from calibre.utils.date import parse_date, strptime + + +class Epubcheck(ePubFixer): + + name = 'Workaround epubcheck bugs' + + @property + def short_description(self): + return _('Workaround epubcheck bugs') + + @property + def long_description(self): + return _('Workarounds for bugs in the latest release of epubcheck. ' + 'epubcheck reports many things as errors that are not ' + 'actually errors. epub-fix will try to detect these and replace ' + 'them with constructs that epubcheck likes. This may cause ' + 'significant changes to your epub, complain to the epubcheck ' + 'project.') + + @property + def fix_name(self): + return 'epubcheck' + + def fix_pubdates(self): + dirtied = False + opf = self.container.opf + for dcdate in opf.xpath('//dc:date', + namespaces={'dc':'http://purl.org/dc/elements/1.1/'}): + raw = dcdate.text + if not raw: raw = '' + default = strptime('2000-1-1', '%Y-%m-%d', as_utc=True) + try: + ts = parse_date(raw, assume_utc=False, as_utc=True, + default=default) + except: + raise InvalidEpub('Invalid date set in OPF', raw) + sval = ts.strftime('%Y-%m-%d') + if sval != raw: + self.log.error( + 'OPF contains date', raw, 'that epubcheck does not like') + if self.fix: + dcdate.text = sval + self.log('\tReplaced', raw, 'with', sval) + dirtied = True + if dirtied: + self.container.set(self.container.opf_name, opf) + + def fix_preserve_aspect_ratio(self): + for name in self.container.name_map: + mt = self.container.mime_map.get(name, '') + if mt.lower() == 'application/xhtml+xml': + root = self.container.get(name) + dirtied = False + for svg in root.xpath('//svg:svg[@preserveAspectRatio="none"]', + namespaces={'svg':'http://www.w3.org/2000/svg'}): + self.log.error('Found element with' + ' preserveAspectRatio="none" which epubcheck ' + 'cannot handle') + if self.fix: + svg.set('preserveAspectRatio', 'xMidYMid meet') + dirtied = True + self.log('\tReplaced none with xMidYMid meet') + if dirtied: + self.container.set(name, root) + + + def run(self, container, opts, log, fix=False): + self.container = container + self.opts = opts + self.log = log + self.fix = fix + self.fix_pubdates() + self.fix_preserve_aspect_ratio() diff --git a/src/calibre/ebooks/epub/fix/main.py b/src/calibre/ebooks/epub/fix/main.py new file mode 100644 index 0000000000..3f9ca260b3 --- /dev/null +++ b/src/calibre/ebooks/epub/fix/main.py @@ -0,0 +1,56 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +import sys, os + +from calibre.utils.config import OptionParser +from calibre.ptempfile import TemporaryDirectory +from calibre import CurrentDir +from calibre.utils.zipfile import ZipFile +from calibre.utils.logging import default_log +from calibre.customize.ui import epub_fixers +from calibre.ebooks.epub.fix.container import Container + +def option_parser(): + parser = OptionParser(usage=_( + '%prog [options] file.epub\n\n' + 'Fix common problems in EPUB files that can cause them ' + 'to be rejected by poorly designed publishing services.\n\n' + 'By default, no fixing is done and messages are printed out ' + 'for each error detected. Use the options to control which errors ' + 'are automatically fixed.')) + for fixer in epub_fixers(): + fixer.add_options_to_parser(parser) + + return parser + + +def run(epub, opts, log): + with TemporaryDirectory('_epub-fix') as tdir: + with CurrentDir(tdir): + zf = ZipFile(epub) + zf.extractall() + zf.close() + container = Container(tdir, log) + for fixer in epub_fixers(): + fix = getattr(opts, fixer.fix_name, False) + fixer.run(container, opts, log, fix=fix) + container.write(epub) + +def main(args=sys.argv): + parser = option_parser() + opts, args = parser.parse_args(args) + if len(args) != 2: + parser.print_help() + print + default_log.error(_('You must specify an epub file')) + return + epub = os.path.abspath(args[1]) + run(epub, opts, default_log) + +if __name__ == '__main__': + main() diff --git a/src/calibre/ebooks/epub/fix/unmanifested.py b/src/calibre/ebooks/epub/fix/unmanifested.py new file mode 100644 index 0000000000..da7a9a9d0e --- /dev/null +++ b/src/calibre/ebooks/epub/fix/unmanifested.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + + +from calibre.ebooks.epub.fix import ePubFixer + +class Unmanifested(ePubFixer): + + name = 'Fix unmanifested files' + + @property + def short_description(self): + return _('Fix unmanifested files') + + @property + def long_description(self): + return _('Fix unmanifested files. epub-fix can either add them to ' + 'the manifest or delete them as specified by the ' + 'delete unmanifested option.') + + @property + def fix_name(self): + return 'unmanifested' + + @property + def options(self): + return [('delete_unmanifested', 'bool', False, + _('Delete unmanifested files instead of adding them to the manifest'))] + + def run(self, container, opts, log, fix=False): + dirtied = False + for name in list(container.manifest_worthy_names()): + item = container.manifest_item_for_name(name) + if item is None: + log.error(name, 'not in manifest') + if fix: + if opts.delete_unmanifested: + container.delete_name(name) + log('\tDeleted') + else: + container.add_name_to_manifest(name) + log('\tAdded to manifest') + dirtied = True + if dirtied: + container.set(container.opf_name, container.opf) diff --git a/src/calibre/ebooks/epub/output.py b/src/calibre/ebooks/epub/output.py index 75739e6a69..4146031cd2 100644 --- a/src/calibre/ebooks/epub/output.py +++ b/src/calibre/ebooks/epub/output.py @@ -380,10 +380,9 @@ class EPUBOutput(OutputFormatPlugin): sel = '.'+lb.get('class') for rule in stylesheet.data.cssRules.rulesOfType(CSSRule.STYLE_RULE): if sel == rule.selectorList.selectorText: - val = rule.style.removeProperty('margin-left') - pval = rule.style.getProperty('padding-left') - if val and not pval: - rule.style.setProperty('padding-left', val) + rule.style.removeProperty('margin-left') + # padding-left breaks rendering in webkit and gecko + rule.style.removeProperty('padding-left') # }}} diff --git a/src/calibre/ebooks/html/input.py b/src/calibre/ebooks/html/input.py index 6108aa329d..73bc22be66 100644 --- a/src/calibre/ebooks/html/input.py +++ b/src/calibre/ebooks/html/input.py @@ -20,7 +20,7 @@ from itertools import izip from calibre.customize.conversion import InputFormatPlugin from calibre.ebooks.chardet import xml_to_unicode from calibre.customize.conversion import OptionRecommendation -from calibre.constants import islinux, isfreebsd +from calibre.constants import islinux, isfreebsd, iswindows from calibre import unicode_path from calibre.utils.localization import get_lang from calibre.utils.filenames import ascii_filename @@ -32,9 +32,14 @@ class Link(object): @classmethod def url_to_local_path(cls, url, base): - path = urlunparse(('', '', url.path, url.params, url.query, '')) + path = url.path + isabs = False + if iswindows and path.startswith('/'): + path = path[1:] + isabs = True + path = urlunparse(('', '', path, url.params, url.query, '')) path = unquote(path) - if os.path.isabs(path): + if isabs or os.path.isabs(path): return path return os.path.abspath(os.path.join(base, path)) @@ -307,6 +312,7 @@ class HTMLInput(InputFormatPlugin): xpath from calibre import guess_type import cssutils + self.OEB_STYLES = OEB_STYLES oeb = create_oebbook(log, None, opts, self, encoding=opts.input_encoding, populate=False) self.oeb = oeb @@ -323,7 +329,7 @@ class HTMLInput(InputFormatPlugin): metadata.add('identifier', mi.isbn, attrib={'scheme':'ISBN'}) if not metadata.language: oeb.logger.warn(u'Language not specified') - metadata.add('language', get_lang()) + metadata.add('language', get_lang().replace('_', '-')) if not metadata.creator: oeb.logger.warn('Creator not specified') metadata.add('creator', self.oeb.translate(__('Unknown'))) @@ -371,7 +377,7 @@ class HTMLInput(InputFormatPlugin): rewrite_links(item.data, partial(self.resource_adder, base=dpath)) for item in oeb.manifest.values(): - if item.media_type in OEB_STYLES: + if item.media_type in self.OEB_STYLES: dpath = None for path, href in self.added_resources.items(): if href == item.href: @@ -409,12 +415,30 @@ class HTMLInput(InputFormatPlugin): oeb.container = DirContainer(os.getcwdu(), oeb.log) return oeb + def link_to_local_path(self, link_, base=None): + if not isinstance(link_, unicode): + try: + link_ = link_.decode('utf-8', 'error') + except: + self.log.warn('Failed to decode link %r. Ignoring'%link_) + return None, None + try: + l = Link(link_, base if base else os.getcwdu()) + except: + self.log.exception('Failed to process link: %r'%link_) + return None, None + if l.path is None: + # Not a local resource + return None, None + link = l.path.replace('/', os.sep).strip() + frag = l.fragment + if not link: + return None, None + return link, frag def resource_adder(self, link_, base=None): - link = self.urlnormalize(link_) - link, frag = self.urldefrag(link) - link = unquote(link).replace('/', os.sep) - if not link.strip(): + link, frag = self.link_to_local_path(link_, base=base) + if link is None: return link_ try: if base and not os.path.isabs(link): @@ -442,6 +466,9 @@ class HTMLInput(InputFormatPlugin): item = self.oeb.manifest.add(id, href, media_type) item.html_input_href = bhref + if guessed in self.OEB_STYLES: + item.override_css_fetch = partial( + self.css_import_handler, os.path.dirname(link)) item.data self.added_resources[link] = href @@ -450,7 +477,17 @@ class HTMLInput(InputFormatPlugin): nlink = '#'.join((nlink, frag)) return nlink - + def css_import_handler(self, base, href): + link, frag = self.link_to_local_path(href, base=base) + if link is None or not os.access(link, os.R_OK) or os.path.isdir(link): + return (None, None) + try: + raw = open(link, 'rb').read().decode('utf-8', 'replace') + raw = self.oeb.css_preprocessor(raw, add_namespace=True) + except: + self.log.exception('Failed to read CSS file: %r'%link) + return (None, None) + return (None, raw) diff --git a/src/calibre/ebooks/lrf/input.py b/src/calibre/ebooks/lrf/input.py index f511ba7f09..256ab6fdf2 100644 --- a/src/calibre/ebooks/lrf/input.py +++ b/src/calibre/ebooks/lrf/input.py @@ -367,7 +367,7 @@ class LRFInput(InputFormatPlugin): xml = d.to_xml(write_files=True) if options.verbose > 2: open('lrs.xml', 'wb').write(xml.encode('utf-8')) - parser = etree.XMLParser(recover=True, no_network=True) + parser = etree.XMLParser(no_network=True, huge_tree=True) doc = etree.fromstring(xml, parser=parser) char_button_map = {} for x in doc.xpath('//CharButton[@refobj]'): diff --git a/src/calibre/ebooks/lrf/objects.py b/src/calibre/ebooks/lrf/objects.py index 8f69e94013..9f0dd4211c 100644 --- a/src/calibre/ebooks/lrf/objects.py +++ b/src/calibre/ebooks/lrf/objects.py @@ -870,7 +870,7 @@ class Text(LRFStream): open_containers = collections.deque() for c in self.content: if isinstance(c, basestring): - s += prepare_string_for_xml(c) + s += prepare_string_for_xml(c).replace('\0', '') elif c is None: if open_containers: p = open_containers.pop() diff --git a/src/calibre/ebooks/metadata/__init__.py b/src/calibre/ebooks/metadata/__init__.py index 690cca511a..0dbffd5f7f 100644 --- a/src/calibre/ebooks/metadata/__init__.py +++ b/src/calibre/ebooks/metadata/__init__.py @@ -268,7 +268,7 @@ class MetaInformation(object): ): prints(x, getattr(self, x, 'None')) - def smart_update(self, mi): + def smart_update(self, mi, replace_tags=False): ''' Merge the information in C{mi} into self. In case of conflicts, the information in C{mi} takes precedence, unless the information in mi is NULL. @@ -282,7 +282,7 @@ class MetaInformation(object): for attr in ('author_sort', 'title_sort', 'category', 'publisher', 'series', 'series_index', 'rating', 'isbn', 'application_id', 'manifest', 'spine', 'toc', - 'cover', 'language', 'guide', 'book_producer', + 'cover', 'guide', 'book_producer', 'timestamp', 'lccn', 'lcc', 'ddc', 'pubdate', 'rights', 'publication_type', 'uuid'): if hasattr(mi, attr): @@ -291,7 +291,10 @@ class MetaInformation(object): setattr(self, attr, val) if mi.tags: - self.tags += mi.tags + if replace_tags: + self.tags = mi.tags + else: + self.tags += mi.tags self.tags = list(set(self.tags)) if mi.author_sort_map: @@ -314,6 +317,11 @@ class MetaInformation(object): if len(other_comments.strip()) > len(my_comments.strip()): self.comments = other_comments + other_lang = getattr(mi, 'language', None) + if other_lang and other_lang.lower() != 'und': + self.language = other_lang + + def format_series_index(self): try: x = float(self.series_index) diff --git a/src/calibre/ebooks/metadata/covers.py b/src/calibre/ebooks/metadata/covers.py new file mode 100644 index 0000000000..af213d1a6c --- /dev/null +++ b/src/calibre/ebooks/metadata/covers.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + + +from calibre.customize import Plugin + +class CoverDownload(Plugin): + + supported_platforms = ['windows', 'osx', 'linux'] + author = 'Kovid Goyal' + type = _('Cover download') diff --git a/src/calibre/ebooks/metadata/douban.py b/src/calibre/ebooks/metadata/douban.py index c881721fcc..c6a34b6162 100644 --- a/src/calibre/ebooks/metadata/douban.py +++ b/src/calibre/ebooks/metadata/douban.py @@ -15,7 +15,6 @@ from calibre.utils.config import OptionParser from calibre.ebooks.metadata.fetch import MetadataSource from calibre.utils.date import parse_date, utcnow -DOUBAN_API_KEY = None NAMESPACES = { 'openSearch':'http://a9.com/-/spec/opensearchrss/1.0/', 'atom' : 'http://www.w3.org/2005/Atom', @@ -35,13 +34,15 @@ date = XPath("descendant::db:attribute[@name='pubdate']") creator = XPath("descendant::db:attribute[@name='author']") tag = XPath("descendant::db:tag") +CALIBRE_DOUBAN_API_KEY = '0bd1672394eb1ebf2374356abec15c3d' + class DoubanBooks(MetadataSource): name = 'Douban Books' description = _('Downloads metadata from Douban.com') supported_platforms = ['windows', 'osx', 'linux'] # Platforms this plugin will run on author = 'Li Fanxi ' # The author of this plugin - version = (1, 0, 0) # The version number of this plugin + version = (1, 0, 1) # The version number of this plugin def fetch(self): try: @@ -65,7 +66,7 @@ class Query(object): type = "search" def __init__(self, title=None, author=None, publisher=None, isbn=None, - max_results=20, start_index=1): + max_results=20, start_index=1, api_key=''): assert not(title is None and author is None and publisher is None and \ isbn is None) assert (int(max_results) < 21) @@ -89,16 +90,16 @@ class Query(object): if self.type == "isbn": self.url = self.ISBN_URL + q - if DOUBAN_API_KEY is not None: - self.url = self.url + "?apikey=" + DOUBAN_API_KEY + if api_key != '': + self.url = self.url + "?apikey=" + api_key else: self.url = self.SEARCH_URL+urlencode({ 'q':q, 'max-results':max_results, 'start-index':start_index, }) - if DOUBAN_API_KEY is not None: - self.url = self.url + "&apikey=" + DOUBAN_API_KEY + if api_key != '': + self.url = self.url + "&apikey=" + api_key def __call__(self, browser, verbose): if verbose: @@ -177,7 +178,7 @@ class ResultList(list): d = None return d - def populate(self, entries, browser, verbose=False): + def populate(self, entries, browser, verbose=False, api_key=''): for x in entries: try: id_url = entry_id(x)[0].text @@ -186,8 +187,8 @@ class ResultList(list): report(verbose) mi = MetaInformation(title, self.get_authors(x)) try: - if DOUBAN_API_KEY is not None: - id_url = id_url + "?apikey=" + DOUBAN_API_KEY + if api_key != '': + id_url = id_url + "?apikey=" + api_key raw = browser.open(id_url).read() feed = etree.fromstring(raw) x = entry(feed)[0] @@ -203,12 +204,16 @@ class ResultList(list): self.append(mi) def search(title=None, author=None, publisher=None, isbn=None, - verbose=False, max_results=40): + verbose=False, max_results=40, api_key=None): br = browser() start, entries = 1, [] + + if api_key is None: + api_key = CALIBRE_DOUBAN_API_KEY + while start > 0 and len(entries) <= max_results: - new, start = Query(title=title, author=author, publisher=publisher, - isbn=isbn, max_results=max_results, start_index=start)(br, verbose) + new, start = Query(title=title, author=author, publisher=publisher, + isbn=isbn, max_results=max_results, start_index=start, api_key=api_key)(br, verbose) if not new: break entries.extend(new) @@ -216,7 +221,7 @@ def search(title=None, author=None, publisher=None, isbn=None, entries = entries[:max_results] ans = ResultList() - ans.populate(entries, br, verbose) + ans.populate(entries, br, verbose, api_key) return ans def option_parser(): diff --git a/src/calibre/ebooks/metadata/fetch.py b/src/calibre/ebooks/metadata/fetch.py index d12c668e0d..0613f64bfb 100644 --- a/src/calibre/ebooks/metadata/fetch.py +++ b/src/calibre/ebooks/metadata/fetch.py @@ -10,10 +10,11 @@ from calibre import prints from calibre.utils.config import OptionParser from calibre.utils.logging import default_log from calibre.customize import Plugin +from calibre.ebooks.metadata.library_thing import check_for_cover metadata_config = None -class MetadataSource(Plugin): +class MetadataSource(Plugin): # {{{ author = 'Kovid Goyal' @@ -130,7 +131,9 @@ class MetadataSource(Plugin): def customization_help(self): return 'This plugin can only be customized using the GUI' -class GoogleBooks(MetadataSource): + # }}} + +class GoogleBooks(MetadataSource): # {{{ name = 'Google Books' description = _('Downloads metadata from Google Books') @@ -145,8 +148,9 @@ class GoogleBooks(MetadataSource): self.exception = e self.tb = traceback.format_exc() + # }}} -class ISBNDB(MetadataSource): +class ISBNDB(MetadataSource): # {{{ name = 'IsbnDB' description = _('Downloads metadata from isbndb.com') @@ -181,7 +185,9 @@ class ISBNDB(MetadataSource): 'and enter your access key below.') return '

'+ans%('', '') -class Amazon(MetadataSource): + # }}} + +class Amazon(MetadataSource): # {{{ name = 'Amazon' metadata_type = 'social' @@ -198,37 +204,27 @@ class Amazon(MetadataSource): self.exception = e self.tb = traceback.format_exc() -class LibraryThing(MetadataSource): + # }}} + +class LibraryThing(MetadataSource): # {{{ name = 'LibraryThing' metadata_type = 'social' - description = _('Downloads series information from librarything.com') + description = _('Downloads series/tags/rating information from librarything.com') def fetch(self): if not self.isbn: return - from calibre import browser - from calibre.ebooks.metadata import MetaInformation - import json - br = browser() + from calibre.ebooks.metadata.library_thing import get_social_metadata try: - raw = br.open( - 'http://status.calibre-ebook.com/library_thing/metadata/'+self.isbn - ).read() - data = json.loads(raw) - if not data: - return - if 'error' in data: - raise Exception(data['error']) - if 'series' in data and 'series_index' in data: - mi = MetaInformation(self.title, []) - mi.series = data['series'] - mi.series_index = data['series_index'] - self.results = mi + self.results = get_social_metadata(self.title, self.book_author, + self.publisher, self.isbn) except Exception, e: self.exception = e self.tb = traceback.format_exc() + # }}} + def result_index(source, result): if not result.isbn: @@ -268,6 +264,26 @@ class MetadataSources(object): for s in self.sources: s.join() +def filter_metadata_results(item): + keywords = ["audio", "tape", "cassette", "abridged", "playaway"] + for keyword in keywords: + if item.publisher and keyword in item.publisher.lower(): + return False + return True + +def do_cover_check(item): + item.has_cover = False + if item.isbn: + try: + item.has_cover = check_for_cover(item.isbn) + except: + pass # Cover not found + +def check_for_covers(items): + threads = [Thread(target=do_cover_check, args=(item,)) for item in items] + for t in threads: t.start() + for t in threads: t.join() + def search(title=None, author=None, publisher=None, isbn=None, isbndb_key=None, verbose=0): assert not(title is None and author is None and publisher is None and \ @@ -285,10 +301,73 @@ def search(title=None, author=None, publisher=None, isbn=None, isbndb_key=None, for fetcher in fetchers[1:]: merge_results(results, fetcher.results) - results = sorted(results, cmp=lambda x, y : cmp( - (x.comments.strip() if x.comments else ''), - (y.comments.strip() if y.comments else '') - ), reverse=True) + results = list(filter(filter_metadata_results, results)) + + check_for_covers(results) + + words = ("the", "a", "an", "of", "and") + prefix_pat = re.compile(r'^(%s)\s+'%("|".join(words))) + trailing_paren_pat = re.compile(r'\(.*\)$') + whitespace_pat = re.compile(r'\s+') + + def sort_func(x, y): + + def cleanup_title(s): + if s is None: + s = _('Unknown') + s = s.strip().lower() + s = prefix_pat.sub(' ', s) + s = trailing_paren_pat.sub('', s) + s = whitespace_pat.sub(' ', s) + return s.strip() + + t = cleanup_title(title) + x_title = cleanup_title(x.title) + y_title = cleanup_title(y.title) + + # prefer titles that start with the search title + tx = cmp(t, x_title) + ty = cmp(t, y_title) + result = 0 if abs(tx) == abs(ty) else abs(tx) - abs(ty) + + # then prefer titles that have a cover image + if result == 0: + result = -cmp(x.has_cover, y.has_cover) + + # then prefer titles with the longest comment, with in 10% + if result == 0: + cx = len(x.comments.strip() if x.comments else '') + cy = len(y.comments.strip() if y.comments else '') + t = (cx + cy) / 20 + result = cy - cx + if abs(result) < t: + result = 0 + + return result + + results = sorted(results, cmp=sort_func) + + # if for some reason there is no comment in the top selection, go looking for one + if len(results) > 1: + if not results[0].comments or len(results[0].comments) == 0: + for r in results[1:]: + try: + if title and title.lower() == r.title[:len(title)].lower() \ + and r.comments and len(r.comments): + results[0].comments = r.comments + break + except: + pass + # Find a pubdate + pubdate = None + for r in results: + if r.pubdate is not None: + pubdate = r.pubdate + break + if pubdate is not None: + for r in results: + if r.pubdate is None: + r.pubdate = pubdate return results, [(x.name, x.exception, x.tb) for x in fetchers] diff --git a/src/calibre/ebooks/metadata/isbndb.py b/src/calibre/ebooks/metadata/isbndb.py index d9f376c83d..356cc3f1b1 100644 --- a/src/calibre/ebooks/metadata/isbndb.py +++ b/src/calibre/ebooks/metadata/isbndb.py @@ -34,7 +34,8 @@ def fetch_metadata(url, max=100, timeout=5.): errmsg = soup.find('errormessage').string raise ISBNDBError('Error fetching metadata: '+errmsg) total_results = int(book_list['total_results']) - np = '&page_number=%s&'%(page_number+1) + page_number += 1 + np = '&page_number=%s&'%page_number url = re.sub(r'\&page_number=\d+\&', np, url) books.extend(book_list.findAll('bookdata')) max -= 1 diff --git a/src/calibre/ebooks/metadata/library_thing.py b/src/calibre/ebooks/metadata/library_thing.py index d10d80bc61..669d9478a3 100644 --- a/src/calibre/ebooks/metadata/library_thing.py +++ b/src/calibre/ebooks/metadata/library_thing.py @@ -6,13 +6,31 @@ Fetch cover from LibraryThing.com based on ISBN number. import sys, socket, os, re -from calibre import browser as _browser +from lxml import html +import mechanize + +from calibre import browser, prints from calibre.utils.config import OptionParser from calibre.ebooks.BeautifulSoup import BeautifulSoup -browser = None OPENLIBRARY = 'http://covers.openlibrary.org/b/isbn/%s-L.jpg?default=false' +class HeadRequest(mechanize.Request): + + def get_method(self): + return 'HEAD' + +def check_for_cover(isbn, timeout=5.): + br = browser() + br.set_handle_redirect(False) + try: + br.open_novisit(HeadRequest(OPENLIBRARY%isbn), timeout=timeout) + return True + except Exception, e: + if callable(getattr(e, 'getcode', None)) and e.getcode() == 302: + return True + return False + class LibraryThingError(Exception): pass @@ -22,31 +40,28 @@ class ISBNNotFound(LibraryThingError): class ServerBusy(LibraryThingError): pass -def login(username, password, force=True): - global browser - if browser is not None and not force: - return - browser = _browser() - browser.open('http://www.librarything.com') - browser.select_form('signup') - browser['formusername'] = username - browser['formpassword'] = password - browser.submit() +def login(br, username, password, force=True): + br.open('http://www.librarything.com') + br.select_form('signup') + br['formusername'] = username + br['formpassword'] = password + br.submit() def cover_from_isbn(isbn, timeout=5., username=None, password=None): - global browser - if browser is None: - browser = _browser() src = None + br = browser() try: - return browser.open(OPENLIBRARY%isbn, timeout=timeout).read(), 'jpg' + return br.open(OPENLIBRARY%isbn, timeout=timeout).read(), 'jpg' except: pass # Cover not found if username and password: - login(username, password, force=False) + try: + login(br, username, password, force=False) + except: + pass try: - src = browser.open('http://www.librarything.com/isbn/'+isbn, + src = br.open_novisit('http://www.librarything.com/isbn/'+isbn, timeout=timeout).read().decode('utf-8', 'replace') except Exception, err: if isinstance(getattr(err, 'args', [None])[0], socket.timeout): @@ -63,7 +78,7 @@ def cover_from_isbn(isbn, timeout=5., username=None, password=None): if url is None: raise LibraryThingError(_('LibraryThing.com server error. Try again later.')) url = re.sub(r'_S[XY]\d+', '', url['src']) - cover_data = browser.open(url).read() + cover_data = br.open_novisit(url).read() return cover_data, url.rpartition('.')[-1] def option_parser(): @@ -71,7 +86,7 @@ def option_parser(): _(''' %prog [options] ISBN -Fetch a cover image for the book identified by ISBN from LibraryThing.com +Fetch a cover image/social metadata for the book identified by ISBN from LibraryThing.com ''')) parser.add_option('-u', '--username', default=None, help='Username for LibraryThing.com') @@ -79,6 +94,61 @@ Fetch a cover image for the book identified by ISBN from LibraryThing.com help='Password for LibraryThing.com') return parser +def get_social_metadata(title, authors, publisher, isbn, username=None, + password=None): + from calibre.ebooks.metadata import MetaInformation + mi = MetaInformation(title, authors) + if isbn: + br = browser() + if username and password: + try: + login(br, username, password, force=False) + except: + pass + + raw = br.open_novisit('http://www.librarything.com/isbn/' + +isbn).read() + if not raw: + return mi + root = html.fromstring(raw) + h1 = root.xpath('//div[@class="headsummary"]/h1') + if h1 and not mi.title: + mi.title = html.tostring(h1[0], method='text', encoding=unicode) + h2 = root.xpath('//div[@class="headsummary"]/h2/a') + if h2 and not mi.authors: + mi.authors = [html.tostring(x, method='text', encoding=unicode) for + x in h2] + h3 = root.xpath('//div[@class="headsummary"]/h3/a') + if h3: + match = None + for h in h3: + series = html.tostring(h, method='text', encoding=unicode) + match = re.search(r'(.+) \((.+)\)', series) + if match is not None: + break + if match is not None: + mi.series = match.group(1).strip() + match = re.search(r'[0-9.]+', match.group(2)) + si = 1.0 + if match is not None: + si = float(match.group()) + mi.series_index = si + #tags = root.xpath('//div[@class="tags"]/span[@class="tag"]/a') + #if tags: + # mi.tags = [html.tostring(x, method='text', encoding=unicode) for x + # in tags] + span = root.xpath( + '//table[@class="wsltable"]/tr[@class="wslcontent"]/td[4]//span') + if span: + raw = html.tostring(span[0], method='text', encoding=unicode) + match = re.search(r'([0-9.]+)', raw) + if match is not None: + rating = float(match.group()) + if rating > 0 and rating <= 5: + mi.rating = rating + return mi + + def main(args=sys.argv): parser = option_parser() opts, args = parser.parse_args(args) @@ -86,6 +156,8 @@ def main(args=sys.argv): parser.print_help() return 1 isbn = args[1] + mi = get_social_metadata('', [], '', isbn) + prints(mi) cover_data, ext = cover_from_isbn(isbn, username=opts.username, password=opts.password) if not ext: diff --git a/src/calibre/ebooks/metadata/opf2.py b/src/calibre/ebooks/metadata/opf2.py index 46924cad1f..36588471f2 100644 --- a/src/calibre/ebooks/metadata/opf2.py +++ b/src/calibre/ebooks/metadata/opf2.py @@ -18,7 +18,7 @@ from calibre.constants import __appname__, __version__, filesystem_encoding from calibre.ebooks.metadata.toc import TOC from calibre.ebooks.metadata import MetaInformation, string_to_authors from calibre.utils.date import parse_date, isoformat - +from calibre.utils.localization import get_lang class Resource(object): ''' @@ -1069,7 +1069,10 @@ class OPFCreator(MetaInformation): dc_attrs={'id':__appname__+'_id'})) if getattr(self, 'pubdate', None) is not None: a(DC_ELEM('date', self.pubdate.isoformat())) - a(DC_ELEM('language', self.language if self.language else 'UND')) + lang = self.language + if not lang or lang.lower() == 'und': + lang = get_lang().replace('_', '-') + a(DC_ELEM('language', lang)) if self.comments: a(DC_ELEM('description', self.comments)) if self.publisher: @@ -1184,7 +1187,6 @@ def metadata_to_opf(mi, as_string=True): factory(DC('contributor'), mi.book_producer, __appname__, 'bkp') if hasattr(mi.pubdate, 'isoformat'): factory(DC('date'), isoformat(mi.pubdate)) - factory(DC('language'), mi.language) if mi.category: factory(DC('type'), mi.category) if mi.comments: @@ -1195,6 +1197,8 @@ def metadata_to_opf(mi, as_string=True): factory(DC('identifier'), mi.isbn, scheme='ISBN') if mi.rights: factory(DC('rights'), mi.rights) + factory(DC('language'), mi.language if mi.language and mi.language.lower() + != 'und' else get_lang().replace('_', '-')) if mi.tags: for tag in mi.tags: factory(DC('subject'), tag) diff --git a/src/calibre/ebooks/metadata/pdf.py b/src/calibre/ebooks/metadata/pdf.py index b4bc6f962f..2d1935539e 100644 --- a/src/calibre/ebooks/metadata/pdf.py +++ b/src/calibre/ebooks/metadata/pdf.py @@ -8,7 +8,7 @@ from functools import partial from calibre import prints from calibre.constants import plugins -from calibre.ebooks.metadata import MetaInformation, string_to_authors, authors_to_string +from calibre.ebooks.metadata import MetaInformation, string_to_authors pdfreflow, pdfreflow_error = plugins['pdfreflow'] @@ -56,66 +56,10 @@ def get_metadata(stream, cover=True): get_quick_metadata = partial(get_metadata, cover=False) -import cStringIO -from threading import Thread - -from calibre.utils.pdftk import set_metadata as pdftk_set_metadata -from calibre.utils.podofo import set_metadata as podofo_set_metadata, Unavailable +from calibre.utils.podofo import set_metadata as podofo_set_metadata def set_metadata(stream, mi): stream.seek(0) - try: - return podofo_set_metadata(stream, mi) - except Unavailable: - pass - try: - return pdftk_set_metadata(stream, mi) - except: - pass - set_metadata_pypdf(stream, mi) - - -class MetadataWriter(Thread): - - def __init__(self, out_pdf, buf): - self.out_pdf = out_pdf - self.buf = buf - Thread.__init__(self) - self.daemon = True - - def run(self): - try: - self.out_pdf.write(self.buf) - except RuntimeError: - pass - -def set_metadata_pypdf(stream, mi): - # Use a StringIO object for the pdf because we will want to over - # write it later and if we are working on the stream directly it - # could cause some issues. - - from pyPdf import PdfFileReader, PdfFileWriter - raw = cStringIO.StringIO(stream.read()) - orig_pdf = PdfFileReader(raw) - title = mi.title if mi.title else orig_pdf.documentInfo.title - author = authors_to_string(mi.authors) if mi.authors else orig_pdf.documentInfo.author - out_pdf = PdfFileWriter(title=title, author=author) - out_str = cStringIO.StringIO() - writer = MetadataWriter(out_pdf, out_str) - for page in orig_pdf.pages: - out_pdf.addPage(page) - writer.start() - writer.join(10) # Wait 10 secs for writing to complete - out_pdf.killed = True - writer.join() - if out_pdf.killed: - print 'Failed to set metadata: took too long' - return - - stream.seek(0) - stream.truncate() - out_str.seek(0) - stream.write(out_str.read()) - stream.seek(0) + return podofo_set_metadata(stream, mi) diff --git a/src/calibre/ebooks/mobi/mobiml.py b/src/calibre/ebooks/mobi/mobiml.py index bfa8758c85..231ad51eee 100644 --- a/src/calibre/ebooks/mobi/mobiml.py +++ b/src/calibre/ebooks/mobi/mobiml.py @@ -58,6 +58,7 @@ class FormatState(object): self.fsize = 3 self.ids = set() self.valign = 'baseline' + self.nest = False self.italic = False self.bold = False self.strikethrough = False @@ -233,9 +234,17 @@ class MobiMLizer(object): inline = etree.SubElement(inline, XHTML('a'), href=href) bstate.anchor = inline if valign == 'super': - inline = etree.SubElement(inline, XHTML('sup')) + parent = inline + if istate.nest and bstate.inline is not None: + parent = bstate.inline + istate.nest = False + inline = etree.SubElement(parent, XHTML('sup')) elif valign == 'sub': - inline = etree.SubElement(inline, XHTML('sub')) + parent = inline + if istate.nest and bstate.inline is not None: + parent = bstate.inline + istate.nest = False + inline = etree.SubElement(parent, XHTML('sub')) elif fsize != 3: inline = etree.SubElement(inline, XHTML('font'), size=str(fsize)) @@ -343,8 +352,10 @@ class MobiMLizer(object): istate.family = 'serif' valign = style['vertical-align'] if valign in ('super', 'text-top') or asfloat(valign) > 0: + istate.nest = istate.valign in ('sub', 'super') istate.valign = 'super' elif valign == 'sub' or asfloat(valign) < 0: + istate.nest = istate.valign in ('sub', 'super') istate.valign = 'sub' else: istate.valign = 'baseline' diff --git a/src/calibre/ebooks/oeb/base.py b/src/calibre/ebooks/oeb/base.py index 76e2cef3bb..b5f61db3ac 100644 --- a/src/calibre/ebooks/oeb/base.py +++ b/src/calibre/ebooks/oeb/base.py @@ -17,6 +17,7 @@ from urlparse import urljoin from lxml import etree, html from cssutils import CSSParser +from cssutils.css import CSSRule import calibre from calibre.constants import filesystem_encoding @@ -25,6 +26,8 @@ from calibre.ebooks.chardet import xml_to_unicode from calibre.ebooks.oeb.entitydefs import ENTITYDEFS from calibre.ebooks.conversion.preprocess import CSSPreProcessor +RECOVER_PARSER = etree.XMLParser(recover=True, no_network=True) + XML_NS = 'http://www.w3.org/XML/1998/namespace' XHTML_NS = 'http://www.w3.org/1999/xhtml' OEB_DOC_NS = 'http://openebook.org/namespaces/oeb-document/1.0/' @@ -232,8 +235,6 @@ PREFIXNAME_RE = re.compile(r'^[^:]+[:][^:]+') XMLDECL_RE = re.compile(r'^\s*<[?]xml.*?[?]>') CSSURL_RE = re.compile(r'''url[(](?P["']?)(?P[^)]+)(?P=q)[)]''') -RECOVER_PARSER = etree.XMLParser(recover=True) - def element(parent, *args, **kwargs): if parent is not None: @@ -762,6 +763,7 @@ class Manifest(object): self.href = self.path = urlnormalize(href) self.media_type = media_type self.fallback = fallback + self.override_css_fetch = None self.spine_position = None self.linear = True if loader is None and data is None: @@ -778,8 +780,7 @@ class Manifest(object): assume_utf8=True, resolve_entities=True)[0] if not data: return None - parser = etree.XMLParser(recover=True) - return etree.fromstring(data, parser=parser) + return etree.fromstring(data, parser=RECOVER_PARSER) def _parse_xhtml(self, data): self.oeb.log.debug('Parsing', self.href, '...') @@ -807,16 +808,18 @@ class Manifest(object): pat = re.compile(r'&(%s);'%('|'.join(user_entities.keys()))) data = pat.sub(lambda m:user_entities[m.group(1)], data) + # Setting huge_tree=True causes crashes in windows with large files + parser = etree.XMLParser(no_network=True) # Try with more & more drastic measures to parse def first_pass(data): try: - data = etree.fromstring(data) + data = etree.fromstring(data, parser=parser) except etree.XMLSyntaxError, err: self.oeb.log.exception('Initial parse failed:') repl = lambda m: ENTITYDEFS.get(m.group(1), m.group(0)) data = ENTITY_RE.sub(repl, data) try: - data = etree.fromstring(data) + data = etree.fromstring(data, parser=parser) except etree.XMLSyntaxError, err: self.oeb.logger.warn('Parsing file %r as HTML' % self.href) if err.args and err.args[0].startswith('Excessive depth'): @@ -830,7 +833,7 @@ class Manifest(object): elem.text = elem.text.strip('-') data = etree.tostring(data, encoding=unicode) try: - data = etree.fromstring(data) + data = etree.fromstring(data, parser=parser) except etree.XMLSyntaxError: data = etree.fromstring(data, parser=RECOVER_PARSER) return data @@ -842,7 +845,7 @@ class Manifest(object): nroot = etree.fromstring('') has_body = False for child in list(data): - if barename(child.tag) == 'body': + if isinstance(child.tag, (unicode, str)) and barename(child.tag) == 'body': has_body = True break parent = nroot @@ -864,12 +867,12 @@ class Manifest(object): data = etree.tostring(data, encoding=unicode) try: - data = etree.fromstring(data) + data = etree.fromstring(data, parser=parser) except: data = data.replace(':=', '=').replace(':>', '>') data = data.replace('', '') try: - data = etree.fromstring(data) + data = etree.fromstring(data, parser=parser) except etree.XMLSyntaxError: self.oeb.logger.warn('Stripping comments and meta tags from %s'% self.href) @@ -880,7 +883,7 @@ class Manifest(object): "", '') data = data.replace("", '') - data = etree.fromstring(data) + data = etree.fromstring(data, parser=RECOVER_PARSER) elif namespace(data.tag) != XHTML_NS: # OEB_DOC_NS, but possibly others ns = namespace(data.tag) @@ -982,15 +985,40 @@ class Manifest(object): def _parse_css(self, data): + + def get_style_rules_from_import(import_rule): + ans = [] + if not import_rule.styleSheet: + return ans + rules = import_rule.styleSheet.cssRules + for rule in rules: + if rule.type == CSSRule.IMPORT_RULE: + ans.extend(get_style_rules_from_import(rule)) + elif rule.type in (CSSRule.FONT_FACE_RULE, + CSSRule.STYLE_RULE): + ans.append(rule) + return ans + self.oeb.log.debug('Parsing', self.href, '...') data = self.oeb.decode(data) - data = self.oeb.css_preprocessor(data) - data = XHTML_CSS_NAMESPACE + data + data = self.oeb.css_preprocessor(data, add_namespace=True) parser = CSSParser(loglevel=logging.WARNING, - fetcher=self._fetch_css, + fetcher=self.override_css_fetch or self._fetch_css, log=_css_logger) data = parser.parseString(data, href=self.href) data.namespaces['h'] = XHTML_NS + import_rules = list(data.cssRules.rulesOfType(CSSRule.IMPORT_RULE)) + rules_to_append = [] + insert_index = None + for r in data.cssRules.rulesOfType(CSSRule.STYLE_RULE): + insert_index = data.cssRules.index(r) + break + for rule in import_rules: + rules_to_append.extend(get_style_rules_from_import(rule)) + for r in reversed(rules_to_append): + data.insertRule(r, index=insert_index) + for rule in import_rules: + data.deleteRule(rule) return data def _fetch_css(self, path): diff --git a/src/calibre/ebooks/oeb/iterator.py b/src/calibre/ebooks/oeb/iterator.py index 3fdd6aaf99..7f56cb4d2d 100644 --- a/src/calibre/ebooks/oeb/iterator.py +++ b/src/calibre/ebooks/oeb/iterator.py @@ -139,11 +139,18 @@ class EbookIterator(object): if id != -1: families = [unicode(f) for f in QFontDatabase.applicationFontFamilies(id)] if family: - family = family.group(1).strip().replace('"', '') - bad_map[family] = families[0] - if family not in families: + family = family.group(1) + specified_families = [x.strip().replace('"', + '').replace("'", '') for x in family.split(',')] + aliasing_ok = False + for f in specified_families: + bad_map[f] = families[0] + if not aliasing_ok and f in families: + aliasing_ok = True + + if not aliasing_ok: prints('WARNING: Family aliasing not fully supported.') - prints('\tDeclared family: %s not in actual families: %s' + prints('\tDeclared family: %r not in actual families: %r' % (family, families)) else: prints('Loaded embedded font:', repr(family)) diff --git a/src/calibre/ebooks/oeb/reader.py b/src/calibre/ebooks/oeb/reader.py index ebe6e78d08..d7d7bbf725 100644 --- a/src/calibre/ebooks/oeb/reader.py +++ b/src/calibre/ebooks/oeb/reader.py @@ -131,7 +131,7 @@ class OEBReader(object): stream = cStringIO.StringIO(etree.tostring(opf)) mi = MetaInformation(OPF(stream)) if not mi.language: - mi.language = get_lang() + mi.language = get_lang().replace('_', '-') self.oeb.metadata.add('language', mi.language) if not mi.title: mi.title = self.oeb.translate(__('Unknown')) diff --git a/src/calibre/ebooks/oeb/stylizer.py b/src/calibre/ebooks/oeb/stylizer.py index 0637dddfb6..4789899fbf 100644 --- a/src/calibre/ebooks/oeb/stylizer.py +++ b/src/calibre/ebooks/oeb/stylizer.py @@ -25,10 +25,17 @@ from calibre.ebooks.oeb.base import XHTML, XHTML_NS, CSS_MIME, OEB_STYLES from calibre.ebooks.oeb.base import XPNSMAP, xpath, urlnormalize from calibre.ebooks.oeb.profile import PROFILES -html_css = open(P('templates/html.css'), 'rb').read() +_html_css_stylesheet = None + +def html_css_stylesheet(): + global _html_css_stylesheet + if _html_css_stylesheet is None: + html_css = open(P('templates/html.css'), 'rb').read() + _html_css_stylesheet = cssutils.parseString(html_css) + _html_css_stylesheet.namespaces['h'] = XHTML_NS + return _html_css_stylesheet + XHTML_CSS_NAMESPACE = '@namespace "%s";\n' % XHTML_NS -HTML_CSS_STYLESHEET = cssutils.parseString(html_css) -HTML_CSS_STYLESHEET.namespaces['h'] = XHTML_NS INHERITED = set(['azimuth', 'border-collapse', 'border-spacing', 'caption-side', 'color', 'cursor', 'direction', 'elevation', @@ -120,12 +127,19 @@ class Stylizer(object): item = oeb.manifest.hrefs[path] basename = os.path.basename(path) cssname = os.path.splitext(basename)[0] + '.css' - stylesheets = [HTML_CSS_STYLESHEET] + stylesheets = [html_css_stylesheet()] head = xpath(tree, '/h:html/h:head') if head: head = head[0] else: head = [] + + # Add cssutils parsing profiles from output_profile + for profile in self.opts.output_profile.extra_css_modules: + cssutils.profile.addProfile(profile['name'], + profile['props'], + profile['macros']) + parser = cssutils.CSSParser(fetcher=self._fetch_css_file, log=logging.getLogger('calibre.css')) self.font_face_rules = [] diff --git a/src/calibre/ebooks/pdf/writer.py b/src/calibre/ebooks/pdf/writer.py index ff624f6831..03519a2cbb 100644 --- a/src/calibre/ebooks/pdf/writer.py +++ b/src/calibre/ebooks/pdf/writer.py @@ -154,20 +154,24 @@ class PDFWriter(QObject): # {{{ self.view.load(QUrl.fromLocalFile(item)) - def get_printer(self): + def get_printer(self, set_horz_margins=False): printer = get_pdf_printer() printer.setPaperSize(QSizeF(self.size[0] * 10, self.size[1] * 10), QPrinter.Millimeter) - printer.setPageMargins(0, 0, 0, 0, QPrinter.Point) + if set_horz_margins: + printer.setPageMargins(0., self.opts.margin_top, 0., + self.opts.margin_bottom, QPrinter.Point) + else: + printer.setPageMargins(0, 0, 0, 0, QPrinter.Point) printer.setOrientation(orientation(self.opts.orientation)) printer.setOutputFormat(QPrinter.PdfFormat) - printer.setFullPage(True) + printer.setFullPage(not set_horz_margins) return printer def _render_html(self, ok): if ok: item_path = os.path.join(self.tmp_path, '%i.pdf' % len(self.combine_queue)) self.logger.debug('\tRendering item %s as %i' % (os.path.basename(str(self.view.url().toLocalFile())), len(self.combine_queue))) - printer = self.get_printer() + printer = self.get_printer(set_horz_margins=True) printer.setOutputFileName(item_path) self.view.print_(printer) self._render_book() diff --git a/src/calibre/ebooks/txt/input.py b/src/calibre/ebooks/txt/input.py index a0570c07ae..b444bf1cf4 100644 --- a/src/calibre/ebooks/txt/input.py +++ b/src/calibre/ebooks/txt/input.py @@ -10,6 +10,7 @@ from calibre.customize.conversion import InputFormatPlugin, OptionRecommendation from calibre.ebooks.txt.processor import convert_basic, convert_markdown, \ separate_paragraphs_single_line, separate_paragraphs_print_formatted, \ preserve_spaces +from calibre import _ent_pat, xml_entity_to_unicode class TXTInput(InputFormatPlugin): @@ -55,6 +56,8 @@ class TXTInput(InputFormatPlugin): if options.preserve_spaces: txt = preserve_spaces(txt) + txt = _ent_pat.sub(xml_entity_to_unicode, txt) + if options.markdown: log.debug('Running text though markdown conversion...') try: @@ -63,7 +66,8 @@ class TXTInput(InputFormatPlugin): raise ValueError('This txt file has malformed markup, it cannot be' ' converted by calibre. See http://daringfireball.net/projects/markdown/syntax') else: - html = convert_basic(txt) + flow_size = getattr(options, 'flow_size', 0) + html = convert_basic(txt, epub_split_size_kb=flow_size) from calibre.customize.ui import plugin_for_input_format html_input = plugin_for_input_format('html') diff --git a/src/calibre/ebooks/txt/processor.py b/src/calibre/ebooks/txt/processor.py index baebf2f298..c53d630ed6 100644 --- a/src/calibre/ebooks/txt/processor.py +++ b/src/calibre/ebooks/txt/processor.py @@ -17,14 +17,11 @@ __docformat__ = 'restructuredtext en' HTML_TEMPLATE = u'%s\n%s\n' -def convert_basic(txt, title=''): - lines = [] +def convert_basic(txt, title='', epub_split_size_kb=0): # Strip whitespace from the beginning and end of the line. Also replace # all line breaks with \n. - for line in txt.splitlines(): - lines.append(line.strip()) - txt = '\n'.join(lines) - + txt = '\n'.join([line.strip() for line in txt.splitlines()]) + # Condense redundant spaces txt = re.sub('[ ]{2,}', ' ', txt) @@ -34,6 +31,15 @@ def convert_basic(txt, title=''): # Remove excessive line breaks. txt = re.sub('\n{3,}', '\n\n', txt) + #Takes care if there is no point to split + if epub_split_size_kb > 0: + length_byte = len(txt.encode('utf-8')) + #Calculating the average chunk value for easy splitting as EPUB (+2 as a safe margin) + chunk_size = long(length_byte / (int(length_byte / (epub_split_size_kb * 1024) ) + 2 )) + #if there are chunks with a superior size then go and break + if (len(filter(lambda x: len(x.encode('utf-8')) > chunk_size, txt.split('\n\n')))) : + txt = u'\n\n'.join([split_string_separator(line, chunk_size) for line in txt.split('\n\n')]) + lines = [] # Split into paragraphs based on having a blank line between text. for line in txt.split('\n\n'): @@ -71,3 +77,10 @@ def opf_writer(path, opf_name, manifest, spine, mi): with open(os.path.join(path, opf_name), 'wb') as opffile: opf.render(opffile) +def split_string_separator(txt, size) : + if len(txt.encode('utf-8')) > size: + txt = u''.join([re.sub(u'\.(?P[^.]*)$', u'.\n\n\g', + txt[i:i+size], 1) for i in + xrange(0, len(txt.encode('utf-8')), size)]) + return txt + diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 1056f6ced6..d922af0914 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -1,18 +1,18 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' """ The GUI """ -import os +import os, sys from threading import RLock -from PyQt4.QtCore import QVariant, QFileInfo, QObject, SIGNAL, QBuffer, Qt, QSize, \ +from PyQt4.Qt import QVariant, QFileInfo, QObject, SIGNAL, QBuffer, Qt, QSize, \ QByteArray, QTranslator, QCoreApplication, QThread, \ - QEvent, QTimer, pyqtSignal, QDate -from PyQt4.QtGui import QFileDialog, QMessageBox, QPixmap, QFileIconProvider, \ - QIcon, QApplication, QDialog, QPushButton + QEvent, QTimer, pyqtSignal, QDate, QDesktopServices, \ + QFileDialog, QMessageBox, QPixmap, QFileIconProvider, \ + QIcon, QApplication, QDialog, QPushButton, QUrl ORG_NAME = 'KovidsBrain' APP_UID = 'libprs500' -from calibre import islinux, iswindows, isosx, isfreebsd +from calibre.constants import islinux, iswindows, isosx, isfreebsd, isfrozen from calibre.utils.config import Config, ConfigProxy, dynamic, JSONConfig from calibre.utils.localization import set_qt_translator from calibre.ebooks.metadata.meta import get_metadata, metadata_from_formats @@ -103,6 +103,8 @@ def _config(): help=_('The layout of the user interface'), default='wide') c.add_opt('show_avg_rating', default=True, help=_('Show the average rating per item indication in the tag browser')) + c.add_opt('disable_animations', default=False, + help=_('Disable UI animations')) return ConfigProxy(c) config = _config() @@ -224,10 +226,11 @@ def error_dialog(parent, title, msg, det_msg='', show=False, return d.exec_() return d -def question_dialog(parent, title, msg, det_msg='', show_copy_button=True): - d = MessageBox(QMessageBox.Question, title, msg, QMessageBox.Yes|QMessageBox.No, +def question_dialog(parent, title, msg, det_msg='', show_copy_button=True, + buttons=QMessageBox.Yes|QMessageBox.No): + d = MessageBox(QMessageBox.Question, title, msg, buttons, parent, det_msg) - d.setIconPixmap(QPixmap(I('dialog_information.svg'))) + d.setIconPixmap(QPixmap(I('dialog_question.svg'))) d.setEscapeButton(QMessageBox.No) if not show_copy_button: d.cb.setVisible(False) @@ -246,7 +249,7 @@ def info_dialog(parent, title, msg, det_msg='', show=False): class Dispatcher(QObject): '''Convenience class to ensure that a function call always happens in the - thread the reciver was created in.''' + thread the receiver was created in.''' dispatch_signal = pyqtSignal(object, object) def __init__(self, func): @@ -505,7 +508,7 @@ def pixmap_to_data(pixmap, format='JPEG'): buf = QBuffer(ba) buf.open(QBuffer.WriteOnly) pixmap.save(buf, format) - return str(ba.data()) + return bytes(ba.data()) class ResizableDialog(QDialog): @@ -577,6 +580,25 @@ class Application(QApplication): _store_app = None +def open_url(qurl): + paths = os.environ.get('LD_LIBRARY_PATH', + '').split(os.pathsep) + paths = [x for x in paths if x] + if isfrozen and islinux and paths: + npaths = [x for x in paths if x != sys.frozen_path] + os.environ['LD_LIBRARY_PATH'] = os.pathsep.join(npaths) + QDesktopServices.openUrl(qurl) + if isfrozen and islinux and paths: + os.environ['LD_LIBRARY_PATH'] = os.pathsep.join(paths) + + +def open_local_file(path): + if iswindows: + os.startfile(os.path.normpath(path)) + else: + url = QUrl.fromLocalFile(path) + open_url(url) + def is_ok_to_use_qt(): global gui_thread, _store_app if (islinux or isfreebsd) and ':' not in os.environ.get('DISPLAY', ''): diff --git a/src/calibre/gui2/actions.py b/src/calibre/gui2/actions.py index f838e9c1fe..9522083b98 100644 --- a/src/calibre/gui2/actions.py +++ b/src/calibre/gui2/actions.py @@ -5,26 +5,28 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import shutil, os, datetime, sys, time +import shutil, os, datetime, time from functools import partial from PyQt4.Qt import QInputDialog, pyqtSignal, QModelIndex, QThread, Qt, \ - SIGNAL, QPixmap, QTimer, QDesktopServices, QUrl, QDialog + SIGNAL, QPixmap, QTimer, QDialog from calibre import strftime from calibre.ptempfile import PersistentTemporaryFile from calibre.utils.config import prefs, dynamic from calibre.gui2 import error_dialog, Dispatcher, gprefs, choose_files, \ - choose_dir, warning_dialog, info_dialog, question_dialog, config + choose_dir, warning_dialog, info_dialog, question_dialog, config, \ + open_local_file from calibre.ebooks.BeautifulSoup import BeautifulSoup, Tag, NavigableString from calibre.utils.filenames import ascii_filename from calibre.gui2.widgets import IMAGE_EXTENSIONS from calibre.gui2.dialogs.metadata_single import MetadataSingleDialog from calibre.gui2.dialogs.metadata_bulk import MetadataBulkDialog +from calibre.gui2.dialogs.tag_list_editor import TagListEditor from calibre.gui2.tools import convert_single_ebook, convert_bulk_ebook, \ fetch_scheduled_recipe, generate_catalog from calibre.constants import preferred_encoding, filesystem_encoding, \ - isosx, isfrozen, islinux + isosx from calibre.gui2.dialogs.choose_format import ChooseFormatDialog from calibre.ebooks import BOOK_EXTENSIONS from calibre.gui2.dialogs.confirm_delete import confirm @@ -176,7 +178,8 @@ class AnnotationsAction(object): # {{{ def mark_book_as_read(self,id): read_tag = gprefs.get('catalog_epub_mobi_read_tag') - self.db.set_tags(id, [read_tag], append=True) + if read_tag: + self.db.set_tags(id, [read_tag], append=True) def canceled(self): self.pd.hide() @@ -320,7 +323,6 @@ class AddAction(object): # {{{ accept = True if accept: event.accept() - self.cover_cache.refresh([cid]) self.library_view.model().current_changed(current_idx, current_idx) def __add_filesystem_book(self, paths, allow_device=True): @@ -643,6 +645,8 @@ class EditMetadataAction(object): # {{{ if x.exception is None: self.library_view.model().refresh_ids( x.updated, cr) + if self.cover_flow: + self.cover_flow.dataChanged() if x.failures: details = ['%s: %s'%(title, reason) for title, reason in x.failures.values()] @@ -687,7 +691,6 @@ class EditMetadataAction(object): # {{{ if rows: current = self.library_view.currentIndex() m = self.library_view.model() - m.refresh_cover_cache(map(m.id, rows)) if self.cover_flow: self.cover_flow.dataChanged() m.current_changed(current, previous) @@ -709,6 +712,8 @@ class EditMetadataAction(object): # {{{ self.library_view.model().resort(reset=False) self.library_view.model().research() self.tags_view.recount() + if self.cover_flow: + self.cover_flow.dataChanged() # Merge books {{{ def merge_books(self, safe_merge=False): @@ -830,6 +835,23 @@ class EditMetadataAction(object): # {{{ db.set_metadata(dest_id, dest_mi, ignore_errors=False) # }}} + def edit_device_collections(self, view, oncard=None): + model = view.model() + result = model.get_collections_with_ids() + compare = (lambda x,y:cmp(x.lower(), y.lower())) + d = TagListEditor(self, tag_to_match=None, data=result, compare=compare) + d.exec_() + if d.result() == d.Accepted: + to_rename = d.to_rename # dict of new text to old ids + to_delete = d.to_delete # list of ids + for text in to_rename: + for old_id in to_rename[text]: + model.rename_collection(old_id, new_name=unicode(text)) + for item in to_delete: + model.delete_collection_using_id(item) + self.upload_collections(model.db, view=view, oncard=oncard) + view.reset() + # }}} class SaveToDiskAction(object): # {{{ @@ -898,7 +920,7 @@ class SaveToDiskAction(object): # {{{ _('Could not save some books') + ', ' + _('Click the show details button to see which ones.'), u'\n\n'.join(failures), show=True) - QDesktopServices.openUrl(QUrl.fromLocalFile(path)) + open_local_file(path) def books_saved(self, job): if job.failed: @@ -1164,15 +1186,7 @@ class ViewAction(object): # {{{ self.job_manager.launch_gui_app(viewer, kwargs=dict(args=args)) else: - paths = os.environ.get('LD_LIBRARY_PATH', - '').split(os.pathsep) - paths = [x for x in paths if x] - if isfrozen and islinux and paths: - npaths = [x for x in paths if x != sys.frozen_path] - os.environ['LD_LIBRARY_PATH'] = os.pathsep.join(npaths) - QDesktopServices.openUrl(QUrl.fromLocalFile(name))#launch(name) - if isfrozen and islinux and paths: - os.environ['LD_LIBRARY_PATH'] = os.pathsep.join(paths) + open_local_file(name) time.sleep(2) # User feedback finally: self.unsetCursor() @@ -1218,11 +1232,11 @@ class ViewAction(object): # {{{ return for row in rows: path = self.library_view.model().db.abspath(row.row()) - QDesktopServices.openUrl(QUrl.fromLocalFile(path)) + open_local_file(path) def view_folder_for_id(self, id_): path = self.library_view.model().db.abspath(id_, index_is_id=True) - QDesktopServices.openUrl(QUrl.fromLocalFile(path)) + open_local_file(path) def view_book(self, triggered): rows = self.current_view().selectionModel().selectedRows() diff --git a/src/calibre/gui2/add.py b/src/calibre/gui2/add.py index 64743e914b..74f5a2148e 100644 --- a/src/calibre/gui2/add.py +++ b/src/calibre/gui2/add.py @@ -15,7 +15,7 @@ from calibre.ebooks.metadata import MetaInformation from calibre.constants import preferred_encoding, filesystem_encoding from calibre.utils.config import prefs -class DuplicatesAdder(QThread): +class DuplicatesAdder(QThread): # {{{ # Add duplicate books def __init__(self, parent, db, duplicates, db_adder): QThread.__init__(self, parent) @@ -34,9 +34,9 @@ class DuplicatesAdder(QThread): self.emit(SIGNAL('added(PyQt_PyObject)'), count) count += 1 self.emit(SIGNAL('adding_done()')) +# }}} - -class RecursiveFind(QThread): +class RecursiveFind(QThread): # {{{ def __init__(self, parent, db, root, single): QThread.__init__(self, parent) @@ -79,7 +79,9 @@ class RecursiveFind(QThread): if not self.canceled: self.emit(SIGNAL('found(PyQt_PyObject)'), self.books) -class DBAdder(Thread): +# }}} + +class DBAdder(Thread): # {{{ def __init__(self, db, ids, nmap): self.db, self.ids, self.nmap = db, dict(**ids), dict(**nmap) @@ -219,8 +221,9 @@ class DBAdder(Thread): self.db.add_format(id, fmt, f, index_is_id=True, notify=False, replace=replace) +# }}} -class Adder(QObject): +class Adder(QObject): # {{{ ADD_TIMEOUT = 600 # seconds @@ -410,6 +413,7 @@ class Adder(QObject): return getattr(getattr(self, 'db_adder', None), 'infos', []) +# }}} ############################################################################### ############################## END ADDER ###################################### diff --git a/src/calibre/gui2/book_details.py b/src/calibre/gui2/book_details.py index f87f8886a5..f08dd09429 100644 --- a/src/calibre/gui2/book_details.py +++ b/src/calibre/gui2/book_details.py @@ -9,13 +9,14 @@ import os, collections from PyQt4.Qt import QLabel, QPixmap, QSize, QWidget, Qt, pyqtSignal, \ QVBoxLayout, QScrollArea, QPropertyAnimation, QEasingCurve, \ - QSizePolicy, QPainter, QRect, pyqtProperty, QDesktopServices, QUrl + QSizePolicy, QPainter, QRect, pyqtProperty from calibre import fit_image, prepare_string_for_xml from calibre.gui2.widgets import IMAGE_EXTENSIONS from calibre.ebooks import BOOK_EXTENSIONS from calibre.constants import preferred_encoding from calibre.library.comments import comments_to_html +from calibre.gui2 import config, open_local_file # render_rows(data) {{{ WEIGHTS = collections.defaultdict(lambda : 100) @@ -133,7 +134,7 @@ class CoverView(QWidget): # {{{ self.pixmap = self.default_pixmap self.do_layout() self.update() - if not same_item: + if not same_item and not config['disable_animations']: self.animation.start() def paintEvent(self, event): @@ -172,6 +173,7 @@ class Label(QLabel): self.setTextFormat(Qt.RichText) self.setText('') self.setWordWrap(True) + self.setAlignment(Qt.AlignTop) self.linkActivated.connect(self.link_activated) self._link_clicked = False self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) @@ -204,15 +206,15 @@ class BookInfo(QScrollArea): rows = render_rows(data) rows = u'\n'.join([u'%s:%s'%(k,t) for k, t in rows]) + comments = '' + if data.get(_('Comments'), '') not in ('', u'None'): + comments = data[_('Comments')] + comments = comments_to_html(comments) if self.vertical: - if _('Comments') in data and data[_('Comments')]: - comments = comments_to_html(data[_('Comments')]) + if comments: rows += u'%s'%comments self.label.setText(u'%s
'%rows) else: - comments = '' - if _('Comments') in data: - comments = comments_to_html(data[_('Comments')]) left_pane = u'%s
'%rows right_pane = u'

%s
'%comments self.label.setText(u''%(key, txt) self.text.setText(u'
%s'%prepare_string_for_xml( + '\n'.join(w.wrap(help))) + g.setToolTip(htext) + g.setWhatsThis(htext) g.__class__.enterEvent = lambda obj, event: self.set_help(getattr(obj, '_help', obj.toolTip())) diff --git a/src/calibre/gui2/convert/metadata.py b/src/calibre/gui2/convert/metadata.py index 3ddd5674bb..cb5b99c525 100644 --- a/src/calibre/gui2/convert/metadata.py +++ b/src/calibre/gui2/convert/metadata.py @@ -87,6 +87,9 @@ class MetadataWidget(Widget, Ui_Form): if not pm.isNull(): self.cover.setPixmap(pm) self.cover_data = cover + else: + self.cover.setPixmap(QPixmap(I('default_cover.svg'))) + def initialize_combos(self): self.initalize_authors() diff --git a/src/calibre/gui2/convert/metadata.ui b/src/calibre/gui2/convert/metadata.ui index 5d3cc432d7..ec5a913f18 100644 --- a/src/calibre/gui2/convert/metadata.ui +++ b/src/calibre/gui2/convert/metadata.ui @@ -20,36 +20,6 @@ Book Cover - - - - - - - - - :/images/book.svg - - - true - - - Qt::AlignCenter - - - - - - - - - Use cover from &source file - - - true - - - @@ -101,6 +71,30 @@ + + + + Use cover from &source file + + + true + + + + + + + + + + 0 + 0 + + + + + + opt_prefer_metadata_cover @@ -308,11 +302,6 @@ - - ImageView - QLabel -
widgets.h
-
EnLineEdit QLineEdit @@ -328,6 +317,12 @@ QLineEdit
widgets.h
+ + ImageView + QWidget +
calibre/gui2/widgets.h
+ 1 +
title diff --git a/src/calibre/gui2/convert/structure_detection.ui b/src/calibre/gui2/convert/structure_detection.ui index e4414473f5..2e97c0d3ca 100644 --- a/src/calibre/gui2/convert/structure_detection.ui +++ b/src/calibre/gui2/convert/structure_detection.ui @@ -28,7 +28,11 @@ - + + + 20 + + diff --git a/src/calibre/gui2/convert/txt_input.ui b/src/calibre/gui2/convert/txt_input.ui index 5a9527ebc5..186783c277 100644 --- a/src/calibre/gui2/convert/txt_input.ui +++ b/src/calibre/gui2/convert/txt_input.ui @@ -43,6 +43,9 @@ true + + true + diff --git a/src/calibre/gui2/convert/xexp_edit.ui b/src/calibre/gui2/convert/xexp_edit.ui index 1b0196a8a1..f98eb8b1b8 100644 --- a/src/calibre/gui2/convert/xexp_edit.ui +++ b/src/calibre/gui2/convert/xexp_edit.ui @@ -43,6 +43,15 @@ 0 + + + 500 + 16777215 + + + + 30 + diff --git a/src/calibre/gui2/cover_flow.py b/src/calibre/gui2/cover_flow.py index c5ac474b0d..c72f53201f 100644 --- a/src/calibre/gui2/cover_flow.py +++ b/src/calibre/gui2/cover_flow.py @@ -67,6 +67,13 @@ if pictureflow is not None: ans = '' return ans + def subtitle(self, index): + try: + return u'\u2605'*self.model.rating(index) + except: + pass + return '' + def reset(self): self.dataChanged.emit() @@ -115,6 +122,7 @@ class CoverFlowMixin(object): self.sync_cf_to_listview) self.db_images = DatabaseImages(self.library_view.model()) self.cover_flow.setImages(self.db_images) + self.cover_flow.itemActivated.connect(self.view_specific_book) else: self.cover_flow = QLabel('

'+_('Cover browser could not be loaded') +'
'+pictureflowerror) diff --git a/src/calibre/gui2/custom_column_widgets.py b/src/calibre/gui2/custom_column_widgets.py index 90ac7dbbaf..96232fe85f 100644 --- a/src/calibre/gui2/custom_column_widgets.py +++ b/src/calibre/gui2/custom_column_widgets.py @@ -10,9 +10,10 @@ from functools import partial from PyQt4.Qt import QComboBox, QLabel, QSpinBox, QDoubleSpinBox, QDateEdit, \ QDate, QGroupBox, QVBoxLayout, QPlainTextEdit, QSizePolicy, \ - QSpacerItem, QIcon, QCheckBox, QWidget, QHBoxLayout, SIGNAL + QSpacerItem, QIcon, QCheckBox, QWidget, QHBoxLayout, SIGNAL, \ + QPushButton -from calibre.utils.date import qt_to_dt +from calibre.utils.date import qt_to_dt, now from calibre.gui2.widgets import TagsLineEdit, EnComboBox from calibre.gui2 import UNDEFINED_QDATE from calibre.utils.config import tweaks @@ -132,20 +133,30 @@ class DateEdit(QDateEdit): def focusInEvent(self, x): self.setSpecialValueText('') + QDateEdit.focusInEvent(self, x) def focusOutEvent(self, x): self.setSpecialValueText(_('Undefined')) + QDateEdit.focusOutEvent(self, x) + + def set_to_today(self): + self.setDate(now()) class DateTime(Base): def setup_ui(self, parent): - self.widgets = [QLabel('&'+self.col_metadata['name']+':', parent), - DateEdit(parent)] + cm = self.col_metadata + self.widgets = [QLabel('&'+cm['name']+':', parent), DateEdit(parent), + QLabel(''), QPushButton(_('Set \'%s\' to today')%cm['name'], parent)] w = self.widgets[1] - w.setDisplayFormat('dd MMM yyyy') + format = cm['display'].get('date_format','') + if not format: + format = 'dd MMM yyyy' + w.setDisplayFormat(format) w.setCalendarPopup(True) w.setMinimumDate(UNDEFINED_QDATE) w.setSpecialValueText(_('Undefined')) + self.widgets[3].clicked.connect(w.set_to_today) def setter(self, val): if val is None: @@ -162,7 +173,6 @@ class DateTime(Base): val = qt_to_dt(val) return val - class Comments(Base): def setup_ui(self, parent): @@ -199,11 +209,7 @@ class Text(Base): w = EnComboBox(parent) w.setSizeAdjustPolicy(w.AdjustToMinimumContentsLengthWithIcon) w.setMinimumContentsLength(25) - - - - self.widgets = [QLabel('&'+self.col_metadata['name']+':', parent), - w] + self.widgets = [QLabel('&'+self.col_metadata['name']+':', parent), w] def initialize(self, book_id): val = self.db.get_custom(book_id, num=self.col_id, index_is_id=True) @@ -222,7 +228,6 @@ class Text(Base): if idx is not None: self.widgets[1].setCurrentIndex(idx) - def setter(self, val): if self.col_metadata['is_multiple']: if not val: @@ -241,6 +246,58 @@ class Text(Base): val = None return val +class Series(Base): + + def setup_ui(self, parent): + values = self.all_values = list(self.db.all_custom(num=self.col_id)) + values.sort(cmp = lambda x,y: cmp(x.lower(), y.lower())) + w = EnComboBox(parent) + w.setSizeAdjustPolicy(w.AdjustToMinimumContentsLengthWithIcon) + w.setMinimumContentsLength(25) + self.name_widget = w + self.widgets = [QLabel('&'+self.col_metadata['name']+':', parent), w] + + self.widgets.append(QLabel('&'+self.col_metadata['name']+_(' index:'), parent)) + w = QDoubleSpinBox(parent) + w.setRange(-100., float(sys.maxint)) + w.setDecimals(2) + w.setSpecialValueText(_('Undefined')) + w.setSingleStep(1) + self.idx_widget=w + self.widgets.append(w) + + def initialize(self, book_id): + val = self.db.get_custom(book_id, num=self.col_id, index_is_id=True) + s_index = self.db.get_custom_extra(book_id, num=self.col_id, index_is_id=True) + if s_index is None: + s_index = 0.0 + self.idx_widget.setValue(s_index) + self.initial_index = s_index + self.initial_val = val + val = self.normalize_db_val(val) + idx = None + for i, c in enumerate(self.all_values): + if c == val: + idx = i + self.name_widget.addItem(c) + self.name_widget.setEditText('') + if idx is not None: + self.widgets[1].setCurrentIndex(idx) + + def commit(self, book_id, notify=False): + val = unicode(self.name_widget.currentText()).strip() + val = self.normalize_ui_val(val) + s_index = self.idx_widget.value() + if val != self.initial_val or s_index != self.initial_index: + if s_index == 0.0: + if tweaks['series_index_auto_increment'] == 'next': + s_index = self.db.get_next_cc_series_num_for(val, + num=self.col_id) + else: + s_index = None + self.db.set_custom(book_id, val, extra=s_index, + num=self.col_id, notify=notify) + widgets = { 'bool' : Bool, 'rating' : Rating, @@ -249,6 +306,7 @@ widgets = { 'datetime': DateTime, 'text' : Text, 'comments': Comments, + 'series': Series, } def field_sort(y, z, x=None): @@ -257,35 +315,65 @@ def field_sort(y, z, x=None): n2 = 'zzzzz' if m2['datatype'] == 'comments' else m2['name'] return cmp(n1.lower(), n2.lower()) -def populate_single_metadata_page(left, right, db, book_id, parent=None): +def populate_metadata_page(layout, db, book_id, bulk=False, two_column=False, parent=None): + def widget_factory(type, col): + if bulk: + w = bulk_widgets[type](db, col, parent) + else: + w = widgets[type](db, col, parent) + w.initialize(book_id) + return w x = db.custom_column_num_map cols = list(x) cols.sort(cmp=partial(field_sort, x=x)) + count_non_comment = len([c for c in cols if x[c]['datatype'] != 'comments']) + + layout.setColumnStretch(1, 10) + if two_column: + turnover_point = (count_non_comment+1)/2 + layout.setColumnStretch(3, 10) + else: + # Avoid problems with multi-line widgets + turnover_point = count_non_comment + 1000 ans = [] - for i, col in enumerate(cols): - w = widgets[x[col]['datatype']](db, col, parent) + column = row = comments_row = 0 + for col in cols: + dt = x[col]['datatype'] + if dt == 'comments': + continue + w = widget_factory(dt, col) ans.append(w) - w.initialize(book_id) - layout = left if i%2 == 0 else right - row = layout.rowCount() - if len(w.widgets) == 1: - layout.addWidget(w.widgets[0], row, 0, 1, -1) - else: - w.widgets[0].setBuddy(w.widgets[1]) - for c, widget in enumerate(w.widgets): - layout.addWidget(widget, row, c) + for c in range(0, len(w.widgets), 2): + w.widgets[c].setBuddy(w.widgets[c+1]) + layout.addWidget(w.widgets[c], row, column) + layout.addWidget(w.widgets[c+1], row, column+1) + row += 1 + comments_row = max(comments_row, row) + if row >= turnover_point: + column += 2 + turnover_point = count_non_comment + 1000 + row = 0 + if not bulk: # Add the comments fields + row = comments_row + column = 0 + for col in cols: + dt = x[col]['datatype'] + if dt != 'comments': + continue + w = widget_factory(dt, col) + ans.append(w) + layout.addWidget(w.widgets[0], row, column, 1, 2) + if two_column and column == 0: + column = 2 + continue + column = 0 + row += 1 items = [] if len(ans) > 0: items.append(QSpacerItem(10, 10, QSizePolicy.Minimum, QSizePolicy.Expanding)) - left.addItem(items[-1], left.rowCount(), 0, 1, 1) - left.setRowStretch(left.rowCount()-1, 100) - if len(ans) > 1: - items.append(QSpacerItem(10, 100, QSizePolicy.Minimum, - QSizePolicy.Expanding)) - right.addItem(items[-1], left.rowCount(), 0, 1, 1) - right.setRowStretch(right.rowCount()-1, 100) - + layout.addItem(items[-1], layout.rowCount(), 0, 1, 1) + layout.setRowStretch(layout.rowCount()-1, 100) return ans, items class BulkBase(Base): @@ -342,6 +430,47 @@ class BulkRating(BulkBase, Rating): class BulkDateTime(BulkBase, DateTime): pass +class BulkSeries(BulkBase): + def setup_ui(self, parent): + values = self.all_values = list(self.db.all_custom(num=self.col_id)) + values.sort(cmp = lambda x,y: cmp(x.lower(), y.lower())) + w = EnComboBox(parent) + w.setSizeAdjustPolicy(w.AdjustToMinimumContentsLengthWithIcon) + w.setMinimumContentsLength(25) + self.name_widget = w + self.widgets = [QLabel('&'+self.col_metadata['name']+':', parent), w] + + self.widgets.append(QLabel(_('Automatically number books in this series'), parent)) + self.idx_widget=QCheckBox(parent) + self.widgets.append(self.idx_widget) + + def initialize(self, book_id): + self.idx_widget.setChecked(False) + for c in self.all_values: + self.name_widget.addItem(c) + self.name_widget.setEditText('') + + def commit(self, book_ids, notify=False): + val = unicode(self.name_widget.currentText()).strip() + val = self.normalize_ui_val(val) + update_indices = self.idx_widget.checkState() + if val != '': + for book_id in book_ids: + if update_indices: + if tweaks['series_index_auto_increment'] == 'next': + s_index = self.db.get_next_cc_series_num_for\ + (val, num=self.col_id) + else: + s_index = 1.0 + else: + s_index = self.db.get_custom_extra(book_id, num=self.col_id, + index_is_id=True) + self.db.set_custom(book_id, val, extra=s_index, + num=self.col_id, notify=notify) + + def process_each_book(self): + return True + class RemoveTags(QWidget): def __init__(self, parent, values): @@ -431,35 +560,5 @@ bulk_widgets = { 'float': BulkFloat, 'datetime': BulkDateTime, 'text' : BulkText, + 'series': BulkSeries, } - -def populate_bulk_metadata_page(layout, db, book_ids, parent=None): - x = db.custom_column_num_map - cols = list(x) - cols.sort(cmp=partial(field_sort, x=x)) - ans = [] - for i, col in enumerate(cols): - dt = x[col]['datatype'] - if dt == 'comments': - continue - w = bulk_widgets[dt](db, col, parent) - ans.append(w) - w.initialize(book_ids) - row = layout.rowCount() - if len(w.widgets) == 1: - layout.addWidget(w.widgets[0], row, 0, 1, -1) - else: - for c in range(0, len(w.widgets), 2): - w.widgets[c].setBuddy(w.widgets[c+1]) - layout.addWidget(w.widgets[c], row, 0) - layout.addWidget(w.widgets[c+1], row, 1) - row += 1 - items = [] - if len(ans) > 0: - items.append(QSpacerItem(10, 10, QSizePolicy.Minimum, - QSizePolicy.Expanding)) - layout.addItem(items[-1], layout.rowCount(), 0, 1, 1) - layout.setRowStretch(layout.rowCount()-1, 100) - - return ans, items - diff --git a/src/calibre/gui2/device.py b/src/calibre/gui2/device.py index 33191d1773..91afac8aa2 100644 --- a/src/calibre/gui2/device.py +++ b/src/calibre/gui2/device.py @@ -10,7 +10,7 @@ from functools import partial from binascii import unhexlify from PyQt4.Qt import QMenu, QAction, QActionGroup, QIcon, SIGNAL, QPixmap, \ - Qt, pyqtSignal, QColor, QPainter + Qt, pyqtSignal, QColor, QPainter, QDialog, QMessageBox from PyQt4.QtSvg import QSvgRenderer from calibre.customize.ui import available_input_formats, available_output_formats, \ @@ -29,7 +29,11 @@ from calibre.utils.filenames import ascii_filename from calibre.devices.errors import FreeSpaceError from calibre.utils.smtp import compose_mail, sendmail, extract_email_address, \ config as email_config +from calibre.devices.apple.driver import ITUNES_ASYNC from calibre.devices.folder_device.driver import FOLDER_DEVICE +from calibre.ebooks.metadata.meta import set_metadata +from calibre.constants import DEBUG +from calibre.utils.config import prefs # }}} @@ -75,10 +79,16 @@ class DeviceJob(BaseJob): # {{{ self.job_done() def abort(self, err): + call_job_done = False + if self.run_state == self.WAITING: + self.start_work() + call_job_done = True self._aborted = True self.failed = True self._details = unicode(err) self.exception = err + if call_job_done: + self.job_done() @property def log_file(self): @@ -104,9 +114,9 @@ class DeviceManager(Thread): # {{{ self.current_job = None self.scanner = DeviceScanner() self.connected_device = None + self.connected_device_kind = None self.ejected_devices = set([]) - self.connected_device_is_folder = False - self.folder_connection_requests = Queue.Queue(0) + self.mount_connection_requests = Queue.Queue(0) self.open_feedback_slot = open_feedback_slot def report_progress(self, *args): @@ -120,7 +130,7 @@ class DeviceManager(Thread): # {{{ def device(self): return self.connected_device - def do_connect(self, connected_devices, is_folder_device): + def do_connect(self, connected_devices, device_kind): for dev, detected_device in connected_devices: if dev.OPEN_FEEDBACK_MESSAGE is not None: self.open_feedback_slot(dev.OPEN_FEEDBACK_MESSAGE) @@ -133,8 +143,8 @@ class DeviceManager(Thread): # {{{ traceback.print_exc() continue self.connected_device = dev - self.connected_device_is_folder = is_folder_device - self.connected_slot(True, is_folder_device) + self.connected_device_kind = device_kind + self.connected_slot(True, device_kind) return True return False @@ -152,7 +162,7 @@ class DeviceManager(Thread): # {{{ if self.connected_device in self.ejected_devices: self.ejected_devices.remove(self.connected_device) else: - self.connected_slot(False, self.connected_device_is_folder) + self.connected_slot(False, self.connected_device_kind) self.connected_device = None def detect_device(self): @@ -174,18 +184,30 @@ class DeviceManager(Thread): # {{{ possibly_connected_devices.append((device, detected_device)) if possibly_connected_devices: if not self.do_connect(possibly_connected_devices, - is_folder_device=False): + device_kind='device'): prints('Connect to device failed, retrying in 5 seconds...') time.sleep(5) if not self.do_connect(possibly_connected_devices, - is_folder_device=False): + device_kind='usb'): prints('Device connect failed again, giving up') + # Mount devices that don't use USB, such as the folder device and iTunes + # This will be called on the GUI thread. Because of this, we must store + # information that the scanner thread will use to do the real work. + def mount_device(self, kls, kind, path): + self.mount_connection_requests.put((kls, kind, path)) + + # disconnect a device def umount_device(self, *args): if self.is_device_connected and not self.job_manager.has_device_jobs(): - self.connected_device.eject() - self.ejected_devices.add(self.connected_device) - self.connected_slot(False, self.connected_device_is_folder) + if self.connected_device_kind == 'device': + self.connected_device.eject() + self.ejected_devices.add(self.connected_device) + self.connected_slot(False, self.connected_device_kind) + elif hasattr(self.connected_device, 'unmount_device'): + # As we are on the wrong thread, this call must *not* do + # anything besides set a flag that the right thread will see. + self.connected_device.unmount_device() def next(self): if not self.jobs.empty(): @@ -196,20 +218,19 @@ class DeviceManager(Thread): # {{{ def run(self): while self.keep_going: - folder_path = None + kls = None while True: try: - folder_path = self.folder_connection_requests.get_nowait() + (kls,device_kind, folder_path) = \ + self.mount_connection_requests.get_nowait() except Queue.Empty: break - if not folder_path or not os.access(folder_path, os.R_OK): - folder_path = None - if not self.is_device_connected and folder_path is not None: + if kls is not None: try: - dev = FOLDER_DEVICE(folder_path) - self.do_connect([[dev, None],], is_folder_device=True) + dev = kls(folder_path) + self.do_connect([[dev, None],], device_kind=device_kind) except: - prints('Unable to open folder as device', folder_path) + prints('Unable to open %s as device (%s)'%(device_kind, folder_path)) traceback.print_exc() else: self.detect_device() @@ -249,21 +270,6 @@ class DeviceManager(Thread): # {{{ return self.create_job(self._get_device_information, done, description=_('Get device information')) - # This will be called on the GUI thread. Because of this, we must store - # information that the scanner thread will use to do the real work. - def connect_to_folder(self, path): - self.folder_connection_requests.put(path) - - # This is called on the GUI thread. No problem here, because it calls the - # device driver, telling it to tell the scanner when it passes by that the - # folder has disconnected. - def disconnect_folder(self): - if self.connected_device is not None: - if hasattr(self.connected_device, 'disconnect_from_folder'): - # As we are on the wrong thread, this call must *not* do - # anything besides set a flag that the right thread will see. - self.connected_device.disconnect_from_folder() - def _books(self): '''Get metadata from device''' mainlist = self.device.books(oncard=None, end_session=False) @@ -294,8 +300,28 @@ class DeviceManager(Thread): # {{{ return self.create_job(self._sync_booklists, done, args=[booklists], description=_('Send metadata to device')) + def upload_collections(self, done, booklist, on_card): + return self.create_job(booklist.rebuild_collections, done, + args=[booklist, on_card], + description=_('Send collections to device')) + def _upload_books(self, files, names, on_card=None, metadata=None): '''Upload books to device: ''' + if metadata and files and len(metadata) == len(files): + for f, mi in zip(files, metadata): + if isinstance(f, unicode): + ext = f.rpartition('.')[-1].lower() + if ext: + try: + if DEBUG: + prints('Setting metadata in:', mi.title, 'at:', + f, file=sys.__stdout__) + with open(f, 'r+b') as stream: + set_metadata(stream, mi, stream_type=ext) + except: + if DEBUG: + prints(traceback.format_exc(), file=sys.__stdout__) + return self.device.upload_books(files, names, on_card, metadata=metadata, end_session=False) @@ -370,7 +396,8 @@ class DeviceMenu(QMenu): # {{{ fetch_annotations = pyqtSignal() connect_to_folder = pyqtSignal() - disconnect_from_folder = pyqtSignal() + connect_to_itunes = pyqtSignal() + disconnect_mounted_device = pyqtSignal() def __init__(self, parent=None): QMenu.__init__(self, parent) @@ -485,10 +512,16 @@ class DeviceMenu(QMenu): # {{{ mitem.triggered.connect(lambda x : self.connect_to_folder.emit()) self.connect_to_folder_action = mitem - mitem = self.addAction(QIcon(I('eject.svg')), _('Disconnect from folder')) + mitem = self.addAction(QIcon(I('devices/itunes.png')), + _('Connect to iTunes')) + mitem.setEnabled(True) + mitem.triggered.connect(lambda x : self.connect_to_itunes.emit()) + self.connect_to_itunes_action = mitem + + mitem = self.addAction(QIcon(I('eject.svg')), _('Eject device')) mitem.setEnabled(False) - mitem.triggered.connect(lambda x : self.disconnect_from_folder.emit()) - self.disconnect_from_folder_action = mitem + mitem.triggered.connect(lambda x : self.disconnect_mounted_device.emit()) + self.disconnect_mounted_device_action = mitem self.addSeparator() self.addMenu(self.set_default_menu) @@ -624,12 +657,17 @@ class DeviceMixin(object): # {{{ def connect_to_folder(self): dir = choose_dir(self, 'Select Device Folder', - _('Select folder to open as device')) - if dir is not None: - self.device_manager.connect_to_folder(dir) + _('Select folder to open as device')) + kls = FOLDER_DEVICE + self.device_manager.mount_device(kls=kls, kind='folder', path=dir) - def disconnect_from_folder(self): - self.device_manager.disconnect_folder() + def connect_to_itunes(self): + kls = ITUNES_ASYNC + self.device_manager.mount_device(kls=kls, kind='itunes', path=None) + + # disconnect from both folder and itunes devices + def disconnect_mounted_device(self): + self.device_manager.umount_device() def _sync_action_triggered(self, *args): m = getattr(self, '_sync_menu', None) @@ -644,18 +682,16 @@ class DeviceMixin(object): # {{{ self.dispatch_sync_event) self._sync_menu.fetch_annotations.connect(self.fetch_annotations) self._sync_menu.connect_to_folder.connect(self.connect_to_folder) - self._sync_menu.disconnect_from_folder.connect(self.disconnect_from_folder) + self._sync_menu.connect_to_itunes.connect(self.connect_to_itunes) + self._sync_menu.disconnect_mounted_device.connect(self.disconnect_mounted_device) if self.device_connected: self._sync_menu.connect_to_folder_action.setEnabled(False) - if self.device_connected == 'folder': - self._sync_menu.disconnect_from_folder_action.setEnabled(True) - else: - self._sync_menu.disconnect_from_folder_action.setEnabled(False) + self._sync_menu.connect_to_itunes_action.setEnabled(False) + self._sync_menu.disconnect_mounted_device_action.setEnabled(True) else: self._sync_menu.connect_to_folder_action.setEnabled(True) - self._sync_menu.disconnect_from_folder_action.setEnabled(False) - - + self._sync_menu.connect_to_itunes_action.setEnabled(True) + self._sync_menu.disconnect_mounted_device_action.setEnabled(False) def device_job_exception(self, job): ''' @@ -689,26 +725,27 @@ class DeviceMixin(object): # {{{ # Device connected {{{ - def set_device_menu_items_state(self, connected, is_folder_device): + def set_device_menu_items_state(self, connected): if connected: self._sync_menu.connect_to_folder_action.setEnabled(False) - if is_folder_device: - self._sync_menu.disconnect_from_folder_action.setEnabled(True) + self._sync_menu.connect_to_itunes_action.setEnabled(False) + self._sync_menu.disconnect_mounted_device_action.setEnabled(True) self._sync_menu.enable_device_actions(True, self.device_manager.device.card_prefix(), self.device_manager.device) self.eject_action.setEnabled(True) else: self._sync_menu.connect_to_folder_action.setEnabled(True) - self._sync_menu.disconnect_from_folder_action.setEnabled(False) + self._sync_menu.connect_to_itunes_action.setEnabled(True) + self._sync_menu.disconnect_mounted_device_action.setEnabled(False) self._sync_menu.enable_device_actions(False) self.eject_action.setEnabled(False) - def device_detected(self, connected, is_folder_device): + def device_detected(self, connected, device_kind): ''' Called when a device is connected to the computer. ''' - self.set_device_menu_items_state(connected, is_folder_device) + self.set_device_menu_items_state(connected) if connected: self.device_manager.get_device_information(\ Dispatcher(self.info_read)) @@ -717,15 +754,13 @@ class DeviceMixin(object): # {{{ self.status_bar.show_message(_('Device: ')+\ self.device_manager.device.__class__.get_gui_name()+\ _(' detected.'), 3000) - self.device_connected = 'device' if not is_folder_device else 'folder' + self.device_connected = device_kind self.location_view.model().device_connected(self.device_manager.device) self.refresh_ondevice_info (device_connected = True, reset_only = True) else: self.device_connected = None + self.status_bar.device_disconnected() self.location_view.model().update_devices() - self.vanity.setText(self.vanity_template%\ - dict(version=self.latest_version, device=' ')) - self.device_info = ' ' if self.current_view() != self.library_view: self.book_details.reset_info() self.location_view.setCurrentIndex(self.location_view.model().index(0)) @@ -739,10 +774,7 @@ class DeviceMixin(object): # {{{ return self.device_job_exception(job) info, cp, fs = job.result self.location_view.model().update_devices(cp, fs) - self.device_info = _('Connected ')+info[0] - self.vanity.setText(self.vanity_template%\ - dict(version=self.latest_version, device=self.device_info)) - + self.status_bar.device_connected(info[0]) self.device_manager.books(Dispatcher(self.metadata_downloaded)) def metadata_downloaded(self, job): @@ -814,7 +846,8 @@ class DeviceMixin(object): # {{{ if specific: d = ChooseFormatDialog(self, _('Choose format to send to device'), self.device_manager.device.settings().format_map) - d.exec_() + if d.exec_() != QDialog.Accepted: + return if d.format(): fmt = d.format().lower() dest, sub_dest = dest.split(':') @@ -920,7 +953,8 @@ class DeviceMixin(object): # {{{ autos = '\n'.join('%s'%i for i in autos) if question_dialog(self, _('No suitable formats'), _('Auto convert the following books before sending via ' - 'email?'), det_msg=autos): + 'email?'), det_msg=autos, + buttons=QMessageBox.Yes|QMessageBox.Cancel): self.auto_convert_mail(to, fmts, delete_from_library, auto, format) if bad: @@ -1019,7 +1053,8 @@ class DeviceMixin(object): # {{{ autos = '\n'.join('%s'%i for i in autos) if question_dialog(self, _('No suitable formats'), _('Auto convert the following books before uploading to ' - 'the device?'), det_msg=autos): + 'the device?'), det_msg=autos, + buttons=QMessageBox.Yes|QMessageBox.Cancel): self.auto_convert_catalogs(auto, format) files = [f for f in files if f is not None] if not files: @@ -1080,7 +1115,8 @@ class DeviceMixin(object): # {{{ autos = '\n'.join('%s'%i for i in autos) if question_dialog(self, _('No suitable formats'), _('Auto convert the following books before uploading to ' - 'the device?'), det_msg=autos): + 'the device?'), det_msg=autos, + buttons=QMessageBox.Yes|QMessageBox.Cancel): self.auto_convert_news(auto, format) files = [f for f in files if f is not None] for f in files: @@ -1125,7 +1161,6 @@ class DeviceMixin(object): # {{{ _files, _auto_ids = self.library_view.model().get_preferred_formats_from_ids(ids, settings.format_map, - set_metadata=True, specific_format=specific_format, exclude_auto=do_auto_convert) if do_auto_convert: @@ -1199,7 +1234,8 @@ class DeviceMixin(object): # {{{ autos = '\n'.join('%s'%i for i in autos) if question_dialog(self, _('No suitable formats'), _('Auto convert the following books before uploading to ' - 'the device?'), det_msg=autos): + 'the device?'), det_msg=autos, + buttons=QMessageBox.Yes|QMessageBox.Cancel): self.auto_convert(auto, on_card, format) if bad: @@ -1227,6 +1263,19 @@ class DeviceMixin(object): # {{{ return cp, fs = job.result self.location_view.model().update_devices(cp, fs) + # reset the views so that up-to-date info is shown. These need to be + # here because the sony driver updates collections in sync_booklists + self.memory_view.reset() + self.card_a_view.reset() + self.card_b_view.reset() + + def _upload_collections(self, job): + if job.failed: + self.device_job_exception(job) + + def upload_collections(self, booklist, view=None, oncard=None): + return self.device_manager.upload_collections(self._upload_collections, + booklist, oncard) def upload_books(self, files, names, metadata, on_card=None, memory=None): ''' @@ -1376,20 +1425,24 @@ class DeviceMixin(object): # {{{ aus = re.sub('(?u)\W|[_]', '', aus) self.db_book_title_cache[title]['author_sort'][aus] = mi self.db_book_title_cache[title]['db_ids'][mi.application_id] = mi - self.db_book_uuid_cache[mi.uuid] = mi.application_id + self.db_book_uuid_cache[mi.uuid] = mi # Now iterate through all the books on the device, setting the # in_library field Fastest and most accurate key is the uuid. Second is # the application_id, which is really the db key, but as this can # accidentally match across libraries we also verify the title. The # db_id exists on Sony devices. Fallback is title and author match - resend_metadata = False + + update_metadata = prefs['manage_device_metadata'] == 'on_connect' for booklist in booklists: for book in booklist: if getattr(book, 'uuid', None) in self.db_book_uuid_cache: + if update_metadata: + book.smart_update(self.db_book_uuid_cache[book.uuid]) book.in_library = True # ensure that the correct application_id is set - book.application_id = self.db_book_uuid_cache[book.uuid] + book.application_id = \ + self.db_book_uuid_cache[book.uuid].application_id continue book_title = book.title.lower() if book.title else '' @@ -1399,13 +1452,13 @@ class DeviceMixin(object): # {{{ if d is not None: if getattr(book, 'application_id', None) in d['db_ids']: book.in_library = True - book.smart_update(d['db_ids'][book.application_id]) - resend_metadata = True + if update_metadata: + book.smart_update(d['db_ids'][book.application_id]) continue if book.db_id in d['db_ids']: book.in_library = True - book.smart_update(d['db_ids'][book.db_id]) - resend_metadata = True + if update_metadata: + book.smart_update(d['db_ids'][book.db_id]) continue if book.authors: # Compare against both author and author sort, because @@ -1414,22 +1467,19 @@ class DeviceMixin(object): # {{{ book_authors = re.sub('(?u)\W|[_]', '', book_authors) if book_authors in d['authors']: book.in_library = True - book.smart_update(d['authors'][book_authors]) - resend_metadata = True + if update_metadata: + book.smart_update(d['authors'][book_authors]) elif book_authors in d['author_sort']: book.in_library = True - book.smart_update(d['author_sort'][book_authors]) - resend_metadata = True + if update_metadata: + book.smart_update(d['author_sort'][book_authors]) # Set author_sort if it isn't already asort = getattr(book, 'author_sort', None) if not asort and book.authors: book.author_sort = self.library_view.model().db.author_sort_from_authors(book.authors) - resend_metadata = True - if resend_metadata: - # Correct the metadata cache on device. + if update_metadata: if self.device_manager.is_device_connected: self.device_manager.sync_booklists(None, booklists) - # }}} diff --git a/src/calibre/gui2/dialogs/book_info.py b/src/calibre/gui2/dialogs/book_info.py index 20ddfae0b4..9770ef864f 100644 --- a/src/calibre/gui2/dialogs/book_info.py +++ b/src/calibre/gui2/dialogs/book_info.py @@ -5,11 +5,11 @@ __docformat__ = 'restructuredtext en' import textwrap, os, re -from PyQt4.QtCore import QCoreApplication, SIGNAL, QModelIndex, QUrl, QTimer, Qt -from PyQt4.QtGui import QDialog, QPixmap, QGraphicsScene, QIcon, QDesktopServices +from PyQt4.QtCore import QCoreApplication, SIGNAL, QModelIndex, QTimer, Qt +from PyQt4.QtGui import QDialog, QPixmap, QGraphicsScene, QIcon from calibre.gui2.dialogs.book_info_ui import Ui_BookInfo -from calibre.gui2 import dynamic +from calibre.gui2 import dynamic, open_local_file from calibre import fit_image from calibre.library.comments import comments_to_html @@ -49,12 +49,12 @@ class BookInfo(QDialog, Ui_BookInfo): def open_book_path(self, path): if os.sep in unicode(path): - QDesktopServices.openUrl(QUrl.fromLocalFile(path)) + open_local_file(path) else: format = unicode(path) path = self.view.model().db.format_abspath(self.current_row, format) if path is not None: - QDesktopServices.openUrl(QUrl.fromLocalFile(path)) + open_local_file(path) def next(self): @@ -123,6 +123,7 @@ class BookInfo(QDialog, Ui_BookInfo): for key in info.keys(): if key == 'id': continue txt = info[key] - txt = u'
\n'.join(textwrap.wrap(txt, 120)) + if key != _('Path'): + txt = u'
\n'.join(textwrap.wrap(txt, 120)) rows += u'

%s:%s
'+rows+'
') diff --git a/src/calibre/gui2/dialogs/choose_format.ui b/src/calibre/gui2/dialogs/choose_format.ui index 0ae0fa8b94..50dd4b4fc1 100644 --- a/src/calibre/gui2/dialogs/choose_format.ui +++ b/src/calibre/gui2/dialogs/choose_format.ui @@ -39,7 +39,7 @@ Qt::Horizontal - QDialogButtonBox::Ok + QDialogButtonBox::Ok|QDialogButtonBox::Cancel diff --git a/src/calibre/gui2/dialogs/config/__init__.py b/src/calibre/gui2/dialogs/config/__init__.py index ad49848b7b..bf9dc0a623 100644 --- a/src/calibre/gui2/dialogs/config/__init__.py +++ b/src/calibre/gui2/dialogs/config/__init__.py @@ -4,7 +4,7 @@ __copyright__ = '2008, Kovid Goyal ' import os, re, time, textwrap, copy, sys from PyQt4.Qt import QDialog, QListWidgetItem, QIcon, \ - QDesktopServices, QVBoxLayout, QLabel, QPlainTextEdit, \ + QVBoxLayout, QLabel, QPlainTextEdit, \ QStringListModel, QAbstractItemModel, QFont, \ SIGNAL, QThread, Qt, QSize, QVariant, QUrl, \ QModelIndex, QAbstractTableModel, \ @@ -15,8 +15,9 @@ from calibre.constants import iswindows, isosx from calibre.gui2.dialogs.config.config_ui import Ui_Dialog from calibre.gui2.dialogs.config.create_custom_column import CreateCustomColumn from calibre.gui2 import choose_dir, error_dialog, config, gprefs, \ - ALL_COLUMNS, NONE, info_dialog, choose_files, \ - warning_dialog, ResizableDialog, question_dialog + open_url, open_local_file, \ + ALL_COLUMNS, NONE, info_dialog, choose_files, \ + warning_dialog, ResizableDialog, question_dialog from calibre.utils.config import prefs from calibre.ebooks import BOOK_EXTENSIONS from calibre.ebooks.oeb.iterator import is_supported @@ -493,6 +494,8 @@ class ConfigDialog(ResizableDialog, Ui_Dialog): if x == config['gui_layout']: li = i self.opt_gui_layout.setCurrentIndex(li) + self.opt_disable_animations.setChecked(config['disable_animations']) + self.opt_show_donate_button.setChecked(config['show_donate_button']) def check_port_value(self, *args): port = self.port.value() @@ -511,7 +514,7 @@ class ConfigDialog(ResizableDialog, Ui_Dialog): def open_config_dir(self): from calibre.utils.config import config_dir - QDesktopServices.openUrl(QUrl.fromLocalFile(config_dir)) + open_local_file(config_dir) def create_symlinks(self): from calibre.utils.osx_symlinks import create_symlinks @@ -804,7 +807,7 @@ class ConfigDialog(ResizableDialog, Ui_Dialog): self.stop.setEnabled(False) def test_server(self): - QDesktopServices.openUrl(QUrl('http://127.0.0.1:'+str(self.port.value()))) + open_url(QUrl('http://127.0.0.1:'+str(self.port.value()))) def compact(self, toggled): d = CheckIntegrity(self.db, self) @@ -868,6 +871,8 @@ class ConfigDialog(ResizableDialog, Ui_Dialog): config['get_social_metadata'] = self.opt_get_social_metadata.isChecked() config['overwrite_author_title_metadata'] = self.opt_overwrite_author_title_metadata.isChecked() config['enforce_cpu_limit'] = bool(self.opt_enforce_cpu_limit.isChecked()) + config['disable_animations'] = bool(self.opt_disable_animations.isChecked()) + config['show_donate_button'] = bool(self.opt_show_donate_button.isChecked()) gprefs['show_splash_screen'] = bool(self.show_splash_screen.isChecked()) fmts = [] for i in range(self.viewer.count()): diff --git a/src/calibre/gui2/dialogs/config/add_save.py b/src/calibre/gui2/dialogs/config/add_save.py index aff995d84f..8eb6cf7bd0 100644 --- a/src/calibre/gui2/dialogs/config/add_save.py +++ b/src/calibre/gui2/dialogs/config/add_save.py @@ -45,6 +45,12 @@ class AddSave(QTabWidget, Ui_TabWidget): self.metadata_box.layout().insertWidget(0, self.filename_pattern) self.opt_swap_author_names.setChecked(prefs['swap_author_names']) self.opt_add_formats_to_existing.setChecked(prefs['add_formats_to_existing']) + if prefs['manage_device_metadata'] == 'manual': + self.manage_device_metadata.setCurrentIndex(0) + elif prefs['manage_device_metadata'] == 'on_send': + self.manage_device_metadata.setCurrentIndex(1) + else: + self.manage_device_metadata.setCurrentIndex(2) help = '\n'.join(textwrap.wrap(c.get_option('template').help, 75)) self.save_template.initialize('save_to_disk', opts.template, help) self.send_template.initialize('send_to_device', opts.send_template, help) @@ -71,11 +77,14 @@ class AddSave(QTabWidget, Ui_TabWidget): prefs['filename_pattern'] = pattern prefs['swap_author_names'] = bool(self.opt_swap_author_names.isChecked()) prefs['add_formats_to_existing'] = bool(self.opt_add_formats_to_existing.isChecked()) - + if self.manage_device_metadata.currentIndex() == 0: + prefs['manage_device_metadata'] = 'manual' + elif self.manage_device_metadata.currentIndex() == 1: + prefs['manage_device_metadata'] = 'on_send' + else: + prefs['manage_device_metadata'] = 'on_connect' return True - - if __name__ == '__main__': from PyQt4.Qt import QApplication app=QApplication([]) diff --git a/src/calibre/gui2/dialogs/config/add_save.ui b/src/calibre/gui2/dialogs/config/add_save.ui index 7fda2dbc7f..c8ee0419a9 100644 --- a/src/calibre/gui2/dialogs/config/add_save.ui +++ b/src/calibre/gui2/dialogs/config/add_save.ui @@ -6,7 +6,7 @@ 0 0 - 588 + 671 516 @@ -51,7 +51,7 @@ - If an existing book with a similar title and author is found that does not have the format being added, the format is added + If an existing book with a similar title and author is found that does not have the format being added, the format is added to the existing book, instead of creating a new entry. If the existing book already has the format, then it is silently ignored. Title match ignores leading indefinite articles ("the", "a", "an"), punctuation, case, etc. Author match is exact. @@ -177,9 +177,82 @@ Title match ignores leading indefinite articles ("the", "a", Sending to &device - - + + + + + 0 + 0 + + + + Metadata &management: + + + manage_device_metadata + + + + + + + + 0 + 0 + + + + + Manual management + + + + + Only on send + + + + + Automatic management + + + + + + + + Qt::Horizontal + + + + 313 + 20 + + + + + + + + <li><b>Manual Management</b>: Calibre updates the metadata and adds collections only when a book is sent. With this option, calibre will never remove a collection.</li> +<li><b>Only on send</b>: Calibre updates metadata and adds/removes collections for a book only when it is sent to the device. </li> +<li><b>Automatic management</b>: Calibre automatically keeps metadata on the device in sync with the calibre library, on every connect</li></ul> + + + true + + + + + + + + + + + + Here you can control how calibre will save your books when you click the Send to Device button. This setting can be overriden for individual devices by customizing the device interface plugins in Preferences->Plugins @@ -188,7 +261,7 @@ Title match ignores leading indefinite articles ("the", "a", - + diff --git a/src/calibre/gui2/dialogs/config/config.ui b/src/calibre/gui2/dialogs/config/config.ui index efda00fc97..b473ee7846 100644 --- a/src/calibre/gui2/dialogs/config/config.ui +++ b/src/calibre/gui2/dialogs/config/config.ui @@ -89,8 +89,8 @@ 0 0 - 720 - 679 + 724 + 683 @@ -356,7 +356,7 @@ - + Show &splash screen at startup @@ -655,6 +655,23 @@ + + + + Disable all animations. Useful if you have a slow/old computer. + + + Disable &animations + + + + + + + Show &donate button (restart) + + + diff --git a/src/calibre/gui2/dialogs/config/create_custom_column.py b/src/calibre/gui2/dialogs/config/create_custom_column.py index a66b7b6642..2aae567b1c 100644 --- a/src/calibre/gui2/dialogs/config/create_custom_column.py +++ b/src/calibre/gui2/dialogs/config/create_custom_column.py @@ -24,16 +24,19 @@ class CreateCustomColumn(QDialog, Ui_QCreateCustomColumn): 2:{'datatype':'comments', 'text':_('Long text, like comments, not shown in the tag browser'), 'is_multiple':False}, - 3:{'datatype':'datetime', + 3:{'datatype':'series', + 'text':_('Text column for keeping series-like information'), + 'is_multiple':False}, + 4:{'datatype':'datetime', 'text':_('Date'), 'is_multiple':False}, - 4:{'datatype':'float', + 5:{'datatype':'float', 'text':_('Floating point numbers'), 'is_multiple':False}, - 5:{'datatype':'int', + 6:{'datatype':'int', 'text':_('Integers'), 'is_multiple':False}, - 6:{'datatype':'rating', + 7:{'datatype':'rating', 'text':_('Ratings, shown with stars'), 'is_multiple':False}, - 7:{'datatype':'bool', + 8:{'datatype':'bool', 'text':_('Yes/No'), 'is_multiple':False}, } diff --git a/src/calibre/gui2/dialogs/delete_matching_from_device.py b/src/calibre/gui2/dialogs/delete_matching_from_device.py index dbac2fe4ad..2135cc0d52 100644 --- a/src/calibre/gui2/dialogs/delete_matching_from_device.py +++ b/src/calibre/gui2/dialogs/delete_matching_from_device.py @@ -25,6 +25,12 @@ class tableItem(QTableWidgetItem): def __lt__(self, other): return self.sort < other.sort +class centeredTableItem(tableItem): + + def __init__(self, text): + tableItem.__init__(self, text) + self.setTextAlignment(Qt.AlignCenter) + class titleTableItem(tableItem): def __init__(self, text): @@ -60,14 +66,14 @@ class DeleteMatchingFromDeviceDialog(QDialog, Ui_DeleteMatchingFromDeviceDialog) self.explanation.setText('

'+_('All checked books will be ' 'permanently deleted from your ' - 'device. Please verify the list.'+'

')) + 'device. Please verify the list.')+'

') self.buttonBox.accepted.connect(self.accepted) self.table.cellClicked.connect(self.cell_clicked) self.table.setSelectionMode(QAbstractItemView.NoSelection) - self.table.setColumnCount(5) + self.table.setColumnCount(7) self.table.setHorizontalHeaderLabels( - ['', _('Location'), _('Title'), - _('Author'), _('Date'), _('Format')]) + ['', _('Location'), _('Title'), _('Author'), + _('Date'), _('Format'), _('Path')]) rows = 0 for card in items: rows += len(items[card][1]) @@ -85,7 +91,8 @@ class DeleteMatchingFromDeviceDialog(QDialog, Ui_DeleteMatchingFromDeviceDialog) self.table.setItem(row, 2, titleTableItem(book.title)) self.table.setItem(row, 3, authorTableItem(book)) self.table.setItem(row, 4, dateTableItem(book.datetime)) - self.table.setItem(row, 5, tableItem(book.path.rpartition('.')[2])) + self.table.setItem(row, 5, centeredTableItem(book.path.rpartition('.')[2])) + self.table.setItem(row, 6, tableItem(book.path)) row += 1 self.table.setCurrentCell(0, 1) self.table.resizeColumnsToContents() diff --git a/src/calibre/gui2/dialogs/fetch_metadata.py b/src/calibre/gui2/dialogs/fetch_metadata.py index f9e2c4da55..eb6edce75d 100644 --- a/src/calibre/gui2/dialogs/fetch_metadata.py +++ b/src/calibre/gui2/dialogs/fetch_metadata.py @@ -42,9 +42,6 @@ class Matches(QAbstractTableModel): def __init__(self, matches): self.matches = matches - self.matches.sort(cmp=lambda b, a: \ - cmp(len(a.comments if a.comments else ''), - len(b.comments if b.comments else ''))) QAbstractTableModel.__init__(self) def rowCount(self, *args): diff --git a/src/calibre/gui2/dialogs/metadata_bulk.py b/src/calibre/gui2/dialogs/metadata_bulk.py index 8b27ff1999..9fcfe13253 100644 --- a/src/calibre/gui2/dialogs/metadata_bulk.py +++ b/src/calibre/gui2/dialogs/metadata_bulk.py @@ -10,7 +10,7 @@ from calibre.gui2.dialogs.metadata_bulk_ui import Ui_MetadataBulkDialog from calibre.gui2.dialogs.tag_editor import TagEditor from calibre.ebooks.metadata import string_to_authors, \ authors_to_string -from calibre.gui2.custom_column_widgets import populate_bulk_metadata_page +from calibre.gui2.custom_column_widgets import populate_metadata_page class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog): @@ -44,15 +44,14 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog): self.central_widget.tabBar().setVisible(False) else: self.create_custom_column_editors() - self.exec_() def create_custom_column_editors(self): w = self.central_widget.widget(1) layout = QGridLayout() - - self.custom_column_widgets, self.__cc_spacers = populate_bulk_metadata_page( - layout, self.db, self.ids, w) + self.custom_column_widgets, self.__cc_spacers = \ + populate_metadata_page(layout, self.db, self.ids, parent=w, + two_column=False, bulk=True) w.setLayout(layout) self.__custom_col_layouts = [layout] ans = self.custom_column_widgets diff --git a/src/calibre/gui2/dialogs/metadata_single.py b/src/calibre/gui2/dialogs/metadata_single.py index 96323ac596..5a4eaec9d7 100644 --- a/src/calibre/gui2/dialogs/metadata_single.py +++ b/src/calibre/gui2/dialogs/metadata_single.py @@ -11,11 +11,10 @@ import re import time import traceback -import sip -from PyQt4.Qt import SIGNAL, QObject, QCoreApplication, Qt, QTimer, QThread, QDate, \ - QPixmap, QListWidgetItem, QDialog, QHBoxLayout, QGridLayout +from PyQt4.Qt import SIGNAL, QObject, Qt, QTimer, QThread, QDate, \ + QPixmap, QListWidgetItem, QDialog -from calibre.gui2 import error_dialog, file_icon_provider, \ +from calibre.gui2 import error_dialog, file_icon_provider, dynamic, \ choose_files, choose_images, ResizableDialog, \ warning_dialog from calibre.gui2.dialogs.metadata_single_ui import Ui_MetadataSingleDialog @@ -26,13 +25,12 @@ from calibre.ebooks import BOOK_EXTENSIONS from calibre.ebooks.metadata import string_to_authors, \ authors_to_string, check_isbn from calibre.ebooks.metadata.library_thing import cover_from_isbn -from calibre import islinux, isfreebsd from calibre.ebooks.metadata.meta import get_metadata from calibre.utils.config import prefs, tweaks from calibre.utils.date import qt_to_dt from calibre.customize.ui import run_plugins_on_import, get_isbndb_key from calibre.gui2.dialogs.config.social import SocialMetadata -from calibre.gui2.custom_column_widgets import populate_single_metadata_page +from calibre.gui2.custom_column_widgets import populate_metadata_page class CoverFetcher(QThread): @@ -91,7 +89,7 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): COVER_FETCH_TIMEOUT = 240 # seconds def do_reset_cover(self, *args): - pix = QPixmap(I('book.svg')) + pix = QPixmap(I('default_cover.svg')) self.cover.setPixmap(pix) self.cover_changed = True self.cover_data = None @@ -105,7 +103,7 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): if _file: _file = os.path.abspath(_file) if not os.access(_file, os.R_OK): - d = error_dialog(self.window, _('Cannot read'), + d = error_dialog(self, _('Cannot read'), _('You do not have permission to read the file: ') + _file) d.exec_() return @@ -114,14 +112,14 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): cf = open(_file, "rb") cover = cf.read() except IOError, e: - d = error_dialog(self.window, _('Error reading file'), + d = error_dialog(self, _('Error reading file'), _("

There was an error reading from file:
") + _file + "


"+str(e)) d.exec_() if cover: pix = QPixmap() pix.loadFromData(cover) if pix.isNull(): - d = error_dialog(self.window, + d = error_dialog(self, _("Not a valid picture"), _file + _(" is not a valid picture")) d.exec_() @@ -164,7 +162,7 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): self.formats_changed = True added = True if bad_perms: - error_dialog(self.window, _('No permission'), + error_dialog(self, _('No permission'), _('You do not have ' 'permission to read the following files:'), det_msg='\n'.join(bad_perms), show=True) @@ -301,6 +299,7 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): self.connect(self.__abort_button, SIGNAL('clicked()'), self.do_cancel_all) self.splitter.setStretchFactor(100, 1) + self.read_state() self.db = db self.pi = ProgressIndicator(self) self.accepted_callback = accepted_callback @@ -311,7 +310,6 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): self.formats.setAcceptDrops(True) self.cover_changed = False self.cpixmap = None - self.cover.setAcceptDrops(True) self.pubdate.setMinimumDate(QDate(100,1,1)) pubdate_format = tweaks['gui_pubdate_display_format'] if pubdate_format is not None: @@ -399,16 +397,11 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): self.series.lineEdit().editingFinished.connect(self.increment_series_index) self.show() - height_of_rest = self.frameGeometry().height() - self.cover.height() - width_of_rest = self.frameGeometry().width() - self.cover.width() - ag = QCoreApplication.instance().desktop().availableGeometry(self) - self.cover.MAX_HEIGHT = ag.height()-(25 if (islinux or isfreebsd) else 0)-height_of_rest - self.cover.MAX_WIDTH = ag.width()-(25 if (islinux or isfreebsd) else 0)-width_of_rest pm = QPixmap() if cover: pm.loadFromData(cover) if pm.isNull(): - pm = QPixmap(I('book.svg')) + pm = QPixmap(I('default_cover.svg')) else: self.cover_data = cover self.cover.setPixmap(pm) @@ -420,23 +413,19 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): def create_custom_column_editors(self): w = self.central_widget.widget(1) - top_layout = QHBoxLayout() - top_layout.setSpacing(20) - left_layout = QGridLayout() - right_layout = QGridLayout() - top_layout.addLayout(left_layout) - - self.custom_column_widgets, self.__cc_spacers = populate_single_metadata_page( - left_layout, right_layout, self.db, self.id, w) - top_layout.addLayout(right_layout) - sip.delete(w.layout()) - w.setLayout(top_layout) - self.__custom_col_layouts = [top_layout, left_layout, right_layout] + layout = w.layout() + self.custom_column_widgets, self.__cc_spacers = \ + populate_metadata_page(layout, self.db, self.id, + parent=w, bulk=False, two_column=True) + self.__custom_col_layouts = [layout] ans = self.custom_column_widgets for i in range(len(ans)-1): - w.setTabOrder(ans[i].widgets[-1], ans[i+1].widgets[-1]) - - + if len(ans[i+1].widgets) == 2: + w.setTabOrder(ans[i].widgets[-1], ans[i+1].widgets[1]) + else: + w.setTabOrder(ans[i].widgets[-1], ans[i+1].widgets[0]) + for c in range(2, len(ans[i].widgets), 2): + w.setTabOrder(ans[i].widgets[c-1], ans[i].widgets[c+1]) def validate_isbn(self, isbn): isbn = unicode(isbn).strip() @@ -720,7 +709,7 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): _('Could not open %s. Is it being used by another' ' program?')%fname, show=True) raise - + self.save_state() QDialog.accept(self) if callable(self.accepted_callback): self.accepted_callback(self.id) @@ -732,3 +721,16 @@ class MetadataSingleDialog(ResizableDialog, Ui_MetadataSingleDialog): cf.wait() QDialog.reject(self, *args) + + def read_state(self): + wg = dynamic.get('metasingle_window_geometry', None) + ss = dynamic.get('metasingle_splitter_state', None) + if wg is not None: + self.restoreGeometry(wg) + if ss is not None: + self.splitter.restoreState(ss) + + def save_state(self): + dynamic.set('metasingle_window_geometry', bytes(self.saveGeometry())) + dynamic.set('metasingle_splitter_state', + bytes(self.splitter.saveState())) diff --git a/src/calibre/gui2/dialogs/metadata_single.ui b/src/calibre/gui2/dialogs/metadata_single.ui index 36375589a7..4efb48d870 100644 --- a/src/calibre/gui2/dialogs/metadata_single.ui +++ b/src/calibre/gui2/dialogs/metadata_single.ui @@ -576,22 +576,13 @@ - + 0 - 0 + 100 - - - - - :/images/book.svg - - - true - @@ -707,11 +698,6 @@
- - ImageView - QLabel -
widgets.h
-
EnLineEdit QLineEdit @@ -732,6 +718,12 @@ QListWidget
calibre/gui2/widgets.h
+ + ImageView + QWidget +
calibre/gui2/widgets.h
+ 1 +
title diff --git a/src/calibre/gui2/dialogs/tag_list_editor.py b/src/calibre/gui2/dialogs/tag_list_editor.py index 1ec80f4b4a..2e5d2ace28 100644 --- a/src/calibre/gui2/dialogs/tag_list_editor.py +++ b/src/calibre/gui2/dialogs/tag_list_editor.py @@ -1,54 +1,64 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -from functools import partial from PyQt4.QtCore import SIGNAL, Qt from PyQt4.QtGui import QDialog, QListWidgetItem from calibre.gui2.dialogs.tag_list_editor_ui import Ui_TagListEditor from calibre.gui2 import question_dialog, error_dialog -from calibre.ebooks.metadata import title_sort + +class ListWidgetItem(QListWidgetItem): + + def __init__(self, txt): + QListWidgetItem.__init__(self, txt) + self.old_value = txt + self.cur_value = txt + + def data(self, role): + if role == Qt.DisplayRole: + if self.old_value != self.cur_value: + return _('%s (was %s)')%(self.cur_value, self.old_value) + else: + return self.cur_value + elif role == Qt.EditRole: + return self.cur_value + else: + return QListWidgetItem.data(self, role) + + def setData(self, role, data): + if role == Qt.EditRole: + self.cur_value = data.toString() + QListWidgetItem.setData(self, role, data) + + def text(self): + return self.cur_value + + def setText(self, txt): + self.cur_value = txt + QListWidgetItem.setText(txt) class TagListEditor(QDialog, Ui_TagListEditor): - def __init__(self, window, db, tag_to_match, category): + def __init__(self, window, tag_to_match, data, compare): QDialog.__init__(self, window) Ui_TagListEditor.__init__(self) self.setupUi(self) self.to_rename = {} self.to_delete = [] - self.db = db self.all_tags = {} - self.category = category - if category == 'tags': - result = db.get_tags_with_ids() - compare = (lambda x,y:cmp(x.lower(), y.lower())) - elif category == 'series': - result = db.get_series_with_ids() - compare = (lambda x,y:cmp(title_sort(x).lower(), title_sort(y).lower())) - elif category == 'publisher': - result = db.get_publishers_with_ids() - compare = (lambda x,y:cmp(x.lower(), y.lower())) - else: # should be a custom field - self.cc_label = None - if category in db.field_metadata: - self.cc_label = db.field_metadata[category]['label'] - result = self.db.get_custom_items_with_ids(label=self.cc_label) - else: - result = [] - compare = (lambda x,y:cmp(x.lower(), y.lower())) - for k,v in result: + for k,v in data: self.all_tags[v] = k for tag in sorted(self.all_tags.keys(), cmp=compare): - item = QListWidgetItem(tag) + item = ListWidgetItem(tag) item.setData(Qt.UserRole, self.all_tags[tag]) self.available_tags.addItem(item) - items = self.available_tags.findItems(tag_to_match, Qt.MatchExactly) - if len(items) == 1: - self.available_tags.setCurrentItem(items[0]) + if tag_to_match is not None: + items = self.available_tags.findItems(tag_to_match, Qt.MatchExactly) + if len(items) == 1: + self.available_tags.setCurrentItem(items[0]) self.connect(self.delete_button, SIGNAL('clicked()'), self.delete_tags) self.connect(self.rename_button, SIGNAL('clicked()'), self.rename_tag) @@ -62,13 +72,11 @@ class TagListEditor(QDialog, Ui_TagListEditor): item.setText(self.item_before_editing.text()) return if item.text() != self.item_before_editing.text(): - if item.text() in self.all_tags.keys() or item.text() in self.to_rename.keys(): - error_dialog(self, _('Item already used'), - _('The item %s is already used.')%(item.text())).exec_() - item.setText(self.item_before_editing.text()) - return (id,ign) = self.item_before_editing.data(Qt.UserRole).toInt() - self.to_rename[item.text()] = id + if item.text() not in self.to_rename: + self.to_rename[item.text()] = [id] + else: + self.to_rename[item.text()].append(id) def rename_tag(self): item = self.available_tags.currentItem() @@ -99,30 +107,3 @@ class TagListEditor(QDialog, Ui_TagListEditor): self.to_delete.append(id) self.available_tags.takeItem(self.available_tags.row(item)) - def accept(self): - rename_func = None - if self.category == 'tags': - rename_func = self.db.rename_tag - delete_func = self.db.delete_tag_using_id - elif self.category == 'series': - rename_func = self.db.rename_series - delete_func = self.db.delete_series_using_id - elif self.category == 'publisher': - rename_func = self.db.rename_publisher - delete_func = self.db.delete_publisher_using_id - else: - rename_func = partial(self.db.rename_custom_item, label=self.cc_label) - delete_func = partial(self.db.delete_custom_item_using_id, label=self.cc_label) - - work_done = False - if rename_func: - for text in self.to_rename: - work_done = True - rename_func(id=self.to_rename[text], new_name=unicode(text)) - for item in self.to_delete: - work_done = True - delete_func(item) - if not work_done: - QDialog.reject(self) - else: - QDialog.accept(self) diff --git a/src/calibre/gui2/dialogs/user_profiles.py b/src/calibre/gui2/dialogs/user_profiles.py index 7b26fea0ae..16f5d383ed 100644 --- a/src/calibre/gui2/dialogs/user_profiles.py +++ b/src/calibre/gui2/dialogs/user_profiles.py @@ -3,13 +3,13 @@ __copyright__ = '2008, Kovid Goyal ' import time, os -from PyQt4.Qt import SIGNAL, QUrl, QDesktopServices, QAbstractListModel, Qt, \ +from PyQt4.Qt import SIGNAL, QUrl, 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 error_dialog, question_dialog, \ +from calibre.gui2 import error_dialog, question_dialog, open_url, \ choose_files, ResizableDialog, NONE from calibre.gui2.widgets import PythonHighlighter from calibre.ptempfile import PersistentTemporaryFile @@ -135,7 +135,7 @@ class UserProfiles(ResizableDialog, Ui_Dialog): url.addQueryItem('subject', subject) url.addQueryItem('body', body) url.addQueryItem('attachment', pt.name) - QDesktopServices.openUrl(url) + open_url(url) def current_changed(self, current, previous): diff --git a/src/calibre/gui2/init.py b/src/calibre/gui2/init.py index b334808d9b..2d038d9ddc 100644 --- a/src/calibre/gui2/init.py +++ b/src/calibre/gui2/init.py @@ -5,22 +5,22 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import functools +import functools, sys, os -from PyQt4.Qt import QMenu, Qt, pyqtSignal, QToolButton, QIcon, QStackedWidget, \ - QSize, QSizePolicy, QStatusBar +from PyQt4.Qt import QMenu, Qt, pyqtSignal, QIcon, QStackedWidget, \ + QSize, QSizePolicy, QStatusBar, QUrl, QLabel, QFont from calibre.utils.config import prefs from calibre.ebooks import BOOK_EXTENSIONS -from calibre.constants import isosx, __appname__, preferred_encoding -from calibre.gui2 import config, is_widescreen +from calibre.constants import isosx, __appname__, preferred_encoding, \ + __version__ +from calibre.gui2 import config, is_widescreen, open_url from calibre.gui2.library.views import BooksView, DeviceBooksView from calibre.gui2.widgets import Splitter from calibre.gui2.tag_view import TagBrowserWidget from calibre.gui2.book_details import BookDetails from calibre.gui2.notify import get_notifier - _keep_refs = [] def partial(*args, **kwargs): @@ -48,6 +48,7 @@ class SaveMenu(QMenu): # {{{ class ToolbarMixin(object): # {{{ def __init__(self): + self.action_help.triggered.connect(self.show_help) md = QMenu() md.addAction(_('Edit metadata individually'), partial(self.edit_metadata, False, bulk=False)) @@ -56,7 +57,8 @@ class ToolbarMixin(object): # {{{ partial(self.edit_metadata, False, bulk=True)) md.addSeparator() md.addAction(_('Download metadata and covers'), - partial(self.download_metadata, False, covers=True)) + partial(self.download_metadata, False, covers=True), + Qt.ControlModifier+Qt.Key_D) md.addAction(_('Download only metadata'), partial(self.download_metadata, False, covers=False)) md.addAction(_('Download only covers'), @@ -171,18 +173,8 @@ class ToolbarMixin(object): # {{{ for x in (self.preferences_action, self.action_preferences): x.triggered.connect(self.do_config) - for x in ('news', 'edit', 'sync', 'convert', 'save', 'add', 'view', - 'del', 'preferences'): - w = self.tool_bar.widgetForAction(getattr(self, 'action_'+x)) - w.setPopupMode(w.MenuButtonPopup) - - self.tool_bar.setContextMenuPolicy(Qt.PreventContextMenu) - - for ch in self.tool_bar.children(): - if isinstance(ch, QToolButton): - ch.setCursor(Qt.PointingHandCursor) - - self.tool_bar.contextMenuEvent = self.no_op + def show_help(self, *args): + open_url(QUrl('http://calibre-ebook.com/user_manual')) def read_toolbar_settings(self): self.tool_bar.setIconSize(config['toolbar_icon_size']) @@ -226,17 +218,30 @@ class LibraryViewMixin(object): # {{{ self.action_show_book_details, self.action_del, add_to_library = None, + edit_device_collections=None, similar_menu=similar_menu) add_to_library = (_('Add books to library'), self.add_books_from_device) + + edit_device_collections = (_('Manage collections'), + partial(self.edit_device_collections, oncard=None)) self.memory_view.set_context_menu(None, None, None, self.action_view, self.action_save, None, None, self.action_del, - add_to_library=add_to_library) + add_to_library=add_to_library, + edit_device_collections=edit_device_collections) + + edit_device_collections = (_('Manage collections'), + partial(self.edit_device_collections, oncard='carda')) self.card_a_view.set_context_menu(None, None, None, self.action_view, self.action_save, None, None, self.action_del, - add_to_library=add_to_library) + add_to_library=add_to_library, + edit_device_collections=edit_device_collections) + + edit_device_collections = (_('Manage collections'), + partial(self.edit_device_collections, oncard='cardb')) self.card_b_view.set_context_menu(None, None, None, self.action_view, self.action_save, None, None, self.action_del, - add_to_library=add_to_library) + add_to_library=add_to_library, + edit_device_collections=edit_device_collections) self.library_view.files_dropped.connect(self.files_dropped, type=Qt.QueuedConnection) for func, args in [ @@ -249,9 +254,14 @@ class LibraryViewMixin(object): # {{{ getattr(view, func)(*args) self.memory_view.connect_dirtied_signal(self.upload_booklists) + self.memory_view.connect_upload_collections_signal( + func=self.upload_collections, oncard=None) self.card_a_view.connect_dirtied_signal(self.upload_booklists) + self.card_a_view.connect_upload_collections_signal( + func=self.upload_collections, oncard='carda') self.card_b_view.connect_dirtied_signal(self.upload_booklists) - + self.card_b_view.connect_upload_collections_signal( + func=self.upload_collections, oncard='cardb') self.book_on_device(None, reset=True) db.set_book_on_device_func(self.book_on_device) self.library_view.set_database(db) @@ -343,12 +353,50 @@ class Stack(QStackedWidget): # {{{ class StatusBar(QStatusBar): # {{{ + def __init__(self, parent=None): + QStatusBar.__init__(self, parent) + self.default_message = __appname__ + ' ' + _('version') + ' ' + \ + self.get_version() + ' ' + _('created by Kovid Goyal') + self.device_string = '' + self.update_label = QLabel('') + self.update_label.setOpenExternalLinks(True) + self.addPermanentWidget(self.update_label) + self.update_label.setVisible(False) + self._font = QFont() + self._font.setBold(True) + self.setFont(self._font) + def initialize(self, systray=None): self.systray = systray self.notifier = get_notifier(systray) + self.messageChanged.connect(self.message_changed, + type=Qt.QueuedConnection) + self.message_changed('') + + def device_connected(self, devname): + self.device_string = _('Connected ') + devname + self.clearMessage() + + def device_disconnected(self): + self.device_string = '' + self.clearMessage() + + def new_version_available(self, ver, url): + msg = (u'%s: %s') % ( + _('Update found'), url, ver) + self.update_label.setText(msg) + self.update_label.setCursor(Qt.PointingHandCursor) + self.update_label.setVisible(True) + + def get_version(self): + dv = os.environ.get('CALIBRE_DEVELOP_FROM', None) + v = __version__ + if getattr(sys, 'frozen', False) and dv and os.path.abspath(dv) in sys.path: + v += '*' + return v def show_message(self, msg, timeout=0): - QStatusBar.showMessage(self, msg, timeout) + self.showMessage(msg, timeout) if self.notifier is not None and not config['disable_tray_notification']: if isosx and isinstance(msg, unicode): try: @@ -358,15 +406,22 @@ class StatusBar(QStatusBar): # {{{ self.notifier(msg) def clear_message(self): - QStatusBar.clearMessage(self) + self.clearMessage() + + def message_changed(self, msg): + if not msg or msg.isEmpty() or msg.isNull() or \ + not unicode(msg).strip(): + extra = '' + if self.device_string: + extra = ' ..::.. ' + self.device_string + self.showMessage(self.default_message + extra) + # }}} class LayoutMixin(object): # {{{ def __init__(self): - self.setupUi(self) - self.setWindowTitle(__appname__) if config['gui_layout'] == 'narrow': # narrow {{{ self.book_details = BookDetails(False, self) diff --git a/src/calibre/gui2/layout.py b/src/calibre/gui2/layout.py new file mode 100644 index 0000000000..1c853cbdff --- /dev/null +++ b/src/calibre/gui2/layout.py @@ -0,0 +1,455 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +from PyQt4.Qt import QIcon, Qt, QWidget, QAction, QToolBar, QSize, QVariant, \ + QAbstractListModel, QFont, QApplication, QPalette, pyqtSignal, QToolButton, \ + QModelIndex, QListView, QAbstractButton, QPainter, QPixmap, QColor, \ + QVBoxLayout, QSizePolicy, QLabel, QHBoxLayout + +from calibre.constants import __appname__, filesystem_encoding +from calibre.gui2.search_box import SearchBox2, SavedSearchBox +from calibre.gui2.throbber import ThrobbingButton +from calibre.gui2 import NONE +from calibre.gui2.widgets import ComboBoxWithHelp +from calibre import human_readable + +class ToolBar(QToolBar): # {{{ + + def __init__(self, parent=None): + QToolBar.__init__(self, parent) + self.setContextMenuPolicy(Qt.PreventContextMenu) + self.setMovable(False) + self.setFloatable(False) + self.setOrientation(Qt.Horizontal) + self.setAllowedAreas(Qt.TopToolBarArea|Qt.BottomToolBarArea) + self.setIconSize(QSize(48, 48)) + self.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) + + def add_actions(self, *args): + self.left_space = QWidget(self) + self.left_space.setSizePolicy(QSizePolicy.Expanding, + QSizePolicy.Minimum) + self.addWidget(self.left_space) + for action in args: + if action is None: + self.addSeparator() + else: + self.addAction(action) + self.right_space = QWidget(self) + self.right_space.setSizePolicy(QSizePolicy.Expanding, + QSizePolicy.Minimum) + self.addWidget(self.right_space) + + def contextMenuEvent(self, *args): + pass + +# }}} + +# Location View {{{ + +class LocationModel(QAbstractListModel): # {{{ + + devicesChanged = pyqtSignal() + + def __init__(self, parent): + QAbstractListModel.__init__(self, parent) + self.icons = [QVariant(QIcon(I('library.png'))), + QVariant(QIcon(I('reader.svg'))), + QVariant(QIcon(I('sd.svg'))), + QVariant(QIcon(I('sd.svg')))] + self.text = [_('Library\n%d books'), + _('Reader\n%s'), + _('Card A\n%s'), + _('Card B\n%s')] + self.free = [-1, -1, -1] + self.count = 0 + self.highlight_row = 0 + self.library_tooltip = _('Click to see the books available on your computer') + self.tooltips = [ + self.library_tooltip, + _('Click to see the books in the main memory of your reader'), + _('Click to see the books on storage card A in your reader'), + _('Click to see the books on storage card B in your reader') + ] + + def database_changed(self, db): + lp = db.library_path + if not isinstance(lp, unicode): + lp = lp.decode(filesystem_encoding, 'replace') + self.tooltips[0] = self.library_tooltip + '\n\n' + \ + _('Books located at') + ' ' + lp + self.dataChanged.emit(self.index(0), self.index(0)) + + def rowCount(self, *args): + return 1 + len([i for i in self.free if i >= 0]) + + def get_device_row(self, row): + if row == 2 and self.free[1] == -1 and self.free[2] > -1: + row = 3 + return row + + def get_tooltip(self, row, drow): + ans = self.tooltips[row] + if row > 0: + fs = self.free[drow-1] + if fs > -1: + ans += '\n\n%s '%(human_readable(fs)) + _('free') + return ans + + def data(self, index, role): + row = index.row() + drow = self.get_device_row(row) + data = NONE + if role == Qt.DisplayRole: + text = self.text[drow]%(human_readable(self.free[drow-1])) if row > 0 \ + else self.text[drow]%self.count + data = QVariant(text) + elif role == Qt.DecorationRole: + data = self.icons[drow] + elif role in (Qt.ToolTipRole, Qt.StatusTipRole): + ans = self.get_tooltip(row, drow) + data = QVariant(ans) + elif role == Qt.SizeHintRole: + data = QVariant(QSize(155, 90)) + elif role == Qt.FontRole: + font = QFont('monospace') + font.setBold(row == self.highlight_row) + data = QVariant(font) + elif role == Qt.ForegroundRole and row == self.highlight_row: + return QVariant(QApplication.palette().brush( + QPalette.HighlightedText)) + elif role == Qt.BackgroundRole and row == self.highlight_row: + return QVariant(QApplication.palette().brush( + QPalette.Highlight)) + + return data + + def device_connected(self, dev): + self.icons[1] = QIcon(dev.icon) + self.dataChanged.emit(self.index(1), self.index(1)) + + def headerData(self, section, orientation, role): + return NONE + + def update_devices(self, cp=(None, None), fs=[-1, -1, -1]): + if cp is None: + cp = (None, None) + if isinstance(cp, (str, unicode)): + cp = (cp, None) + if len(fs) < 3: + fs = list(fs) + [0] + self.free[0] = fs[0] + self.free[1] = fs[1] + self.free[2] = fs[2] + cpa, cpb = cp + self.free[1] = fs[1] if fs[1] is not None and cpa is not None else -1 + self.free[2] = fs[2] if fs[2] is not None and cpb is not None else -1 + self.reset() + self.devicesChanged.emit() + + def location_changed(self, row): + self.highlight_row = row + self.dataChanged.emit( + self.index(0), self.index(self.rowCount(QModelIndex())-1)) + + def location_for_row(self, row): + if row == 0: return 'library' + if row == 1: return 'main' + if row == 3: return 'cardb' + return 'carda' if self.free[1] > -1 else 'cardb' + +# }}} + +class LocationView(QListView): + + unmount_device = pyqtSignal() + location_selected = pyqtSignal(object) + + def __init__(self, parent): + QListView.__init__(self, parent) + self.setModel(LocationModel(self)) + self.reset() + self.currentChanged = self.current_changed + + self.eject_button = EjectButton(self) + self.eject_button.hide() + + self.entered.connect(self.item_entered) + self.viewportEntered.connect(self.viewport_entered) + self.eject_button.clicked.connect(self.eject_clicked) + self.model().devicesChanged.connect(self.eject_button.hide) + self.setSizePolicy(QSizePolicy(QSizePolicy.Expanding, + QSizePolicy.Expanding)) + self.setMouseTracking(True) + self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + self.setHorizontalScrollBarPolicy(Qt.ScrollBarAsNeeded) + self.setEditTriggers(self.NoEditTriggers) + self.setTabKeyNavigation(True) + self.setProperty("showDropIndicator", True) + self.setSelectionMode(self.SingleSelection) + self.setIconSize(QSize(40, 40)) + self.setMovement(self.Static) + self.setFlow(self.LeftToRight) + self.setGridSize(QSize(175, 90)) + self.setViewMode(self.ListMode) + self.setWordWrap(True) + self.setObjectName("location_view") + self.setMaximumHeight(74) + + def eject_clicked(self, *args): + self.unmount_device.emit() + + def count_changed(self, new_count): + self.model().count = new_count + self.model().reset() + + def current_changed(self, current, previous): + if current.isValid(): + i = current.row() + location = self.model().location_for_row(i) + self.location_selected.emit(location) + self.model().location_changed(i) + + def location_changed(self, row): + if 0 <= row and row <= 3: + self.model().location_changed(row) + + def leaveEvent(self, event): + self.unsetCursor() + self.eject_button.hide() + + def item_entered(self, location): + self.setCursor(Qt.PointingHandCursor) + self.eject_button.hide() + + if location.row() == 1: + rect = self.visualRect(location) + + self.eject_button.resize(rect.height()/2, rect.height()/2) + + x, y = rect.left(), rect.top() + x = x + (rect.width() - self.eject_button.width() - 2) + y += 6 + + self.eject_button.move(x, y) + self.eject_button.show() + + def viewport_entered(self): + self.unsetCursor() + self.eject_button.hide() + + +class EjectButton(QAbstractButton): + + def __init__(self, parent): + QAbstractButton.__init__(self, parent) + self.mouse_over = False + + def enterEvent(self, event): + self.mouse_over = True + + def leaveEvent(self, event): + self.mouse_over = False + + def paintEvent(self, event): + painter = QPainter(self) + painter.setClipRect(event.rect()) + image = QPixmap(I('eject')).scaledToHeight(event.rect().height(), + Qt.SmoothTransformation) + + if not self.mouse_over: + alpha_mask = QPixmap(image.width(), image.height()) + color = QColor(128, 128, 128) + alpha_mask.fill(color) + image.setAlphaChannel(alpha_mask) + + painter.drawPixmap(0, 0, image) + + + + +# }}} + +class SearchBar(QWidget): # {{{ + + def __init__(self, parent): + QWidget.__init__(self, parent) + self._layout = l = QHBoxLayout() + self.setLayout(self._layout) + + x = ComboBoxWithHelp(self) + x.setMaximumSize(QSize(150, 16777215)) + x.setObjectName("search_restriction") + x.setToolTip(_("Books display will be restricted to those matching the selected saved search")) + l.addWidget(x) + parent.search_restriction = x + + x = QLabel(self) + x.setObjectName("search_count") + l.addWidget(x) + parent.search_count = x + x.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum) + + parent.advanced_search_button = x = QToolButton(self) + x.setIcon(QIcon(I('search.svg'))) + l.addWidget(x) + x.setToolTip(_("Advanced search")) + + self.label = x = QLabel('&Search:') + l.addWidget(self.label) + x.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum) + + x = parent.search = SearchBox2(self) + x.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Minimum) + x.setObjectName("search") + x.setToolTip(_("

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

Words separated by spaces are ANDed")) + l.addWidget(x) + + x = parent.clear_button = QToolButton(self) + x.setIcon(QIcon(I('clear_left.svg'))) + x.setObjectName("clear_button") + l.addWidget(x) + x.setToolTip(_("Reset Quick Search")) + + x = parent.saved_search = SavedSearchBox(self) + x.setMaximumSize(QSize(150, 16777215)) + x.setMinimumContentsLength(15) + x.setObjectName("saved_search") + l.addWidget(x) + + x = parent.copy_search_button = QToolButton(self) + x.setIcon(QIcon(I("search_copy_saved.svg"))) + x.setObjectName("copy_search_button") + l.addWidget(x) + x.setToolTip(_("Copy current search text (instead of search name)")) + + x = parent.save_search_button = QToolButton(self) + x.setIcon(QIcon(I("search_add_saved.svg"))) + x.setObjectName("save_search_button") + l.addWidget(x) + x.setToolTip(_("Save current search under the name shown in the box")) + + x = parent.delete_search_button = QToolButton(self) + x.setIcon(QIcon(I("search_delete_saved.svg"))) + x.setObjectName("delete_search_button") + l.addWidget(x) + x.setToolTip(_("Delete current saved search")) + + self.label.setBuddy(parent.search) + + +# }}} + +class LocationBar(ToolBar): # {{{ + + def __init__(self, actions, donate, location_view, parent=None): + ToolBar.__init__(self, parent) + + for ac in actions: + self.addAction(ac) + + self.addWidget(location_view) + self.w = QWidget() + self.w.setLayout(QVBoxLayout()) + self.w.layout().addWidget(donate) + donate.setAutoRaise(True) + donate.setCursor(Qt.PointingHandCursor) + self.addWidget(self.w) + self.setIconSize(QSize(50, 50)) + self.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) + + def button_for_action(self, ac): + b = QToolButton(self) + b.setDefaultAction(ac) + for x in ('ToolTip', 'StatusTip', 'WhatsThis'): + getattr(b, 'set'+x)(b.text()) + + return b +# }}} + +class MainWindowMixin(object): + + def __init__(self): + self.setObjectName('MainWindow') + self.setWindowIcon(QIcon(I('library.png'))) + self.setWindowTitle(__appname__) + + self.setContextMenuPolicy(Qt.NoContextMenu) + self.centralwidget = QWidget(self) + self.setCentralWidget(self.centralwidget) + self._central_widget_layout = QVBoxLayout() + self.centralwidget.setLayout(self._central_widget_layout) + self.resize(1012, 740) + self.donate_button = ThrobbingButton(self.centralwidget) + self.donate_button.set_normal_icon_size(64, 64) + + # Actions {{{ + + def ac(name, text, icon, shortcut=None, tooltip=None): + action = QAction(QIcon(I(icon)), text, self) + text = tooltip if tooltip else text + action.setToolTip(text) + action.setStatusTip(text) + action.setWhatsThis(text) + action.setAutoRepeat(False) + action.setObjectName('action_'+name) + if shortcut: + action.setShortcut(shortcut) + setattr(self, 'action_'+name, action) + + ac('add', _('Add books'), 'add_book.svg', _('A')) + ac('del', _('Remove books'), 'trash.svg', _('Del')) + ac('edit', _('Edit metadata'), 'edit_input.svg', _('E')) + ac('merge', _('Merge book records'), 'merge_books.svg', _('M')) + ac('sync', _('Send to device'), 'sync.svg') + ac('save', _('Save to disk'), 'save.svg', _('S')) + ac('news', _('Fetch news'), 'news.svg', _('F')) + ac('convert', _('Convert books'), 'convert.svg', _('C')) + ac('view', _('View'), 'view.svg', _('V')) + ac('open_containing_folder', _('Open containing folder'), + 'document_open.svg') + ac('show_book_details', _('Show book details'), + 'dialog_information.svg') + ac('books_by_same_author', _('Books by same author'), + 'user_profile.svg') + ac('books_in_this_series', _('Books in this series'), + 'books_in_series.svg') + ac('books_by_this_publisher', _('Books by this publisher'), + 'publisher.png') + ac('books_with_the_same_tags', _('Books with the same tags'), + 'tags.svg') + ac('preferences', _('Preferences'), 'config.svg', _('Ctrl+P')) + ac('help', _('Help'), 'help.svg', _('F1'), _("Browse the calibre User Manual")) + + # }}} + + self.tool_bar = ToolBar(self) + self.addToolBar(Qt.BottomToolBarArea, self.tool_bar) + self.tool_bar.add_actions(self.action_convert, self.action_view, + None, self.action_edit, None, + self.action_save, self.action_del, + None, + self.action_help, None, self.action_preferences) + + self.location_view = LocationView(self.centralwidget) + self.search_bar = SearchBar(self) + self.location_bar = LocationBar([self.action_add, self.action_sync, + self.action_news], self.donate_button, self.location_view, self) + self.addToolBar(Qt.TopToolBarArea, self.location_bar) + + l = self.centralwidget.layout() + l.addWidget(self.search_bar) + + for ch in list(self.tool_bar.children()) + list(self.location_bar.children()): + if isinstance(ch, QToolButton): + ch.setCursor(Qt.PointingHandCursor) + ch.setAutoRaise(True) + if ch is not self.donate_button: + ch.setPopupMode(ch.MenuButtonPopup) + + + diff --git a/src/calibre/gui2/library/delegates.py b/src/calibre/gui2/library/delegates.py index 529055ecd2..40f7a2e4e0 100644 --- a/src/calibre/gui2/library/delegates.py +++ b/src/calibre/gui2/library/delegates.py @@ -96,7 +96,7 @@ class DateDelegate(QStyledItemDelegate): # {{{ def displayText(self, val, locale): d = val.toDate() - if d == UNDEFINED_QDATE: + if d <= UNDEFINED_QDATE: return '' return format_date(d.toPyDate(), 'dd MMM yyyy') @@ -116,7 +116,7 @@ class PubDateDelegate(QStyledItemDelegate): # {{{ def displayText(self, val, locale): d = val.toDate() - if d == UNDEFINED_QDATE: + if d <= UNDEFINED_QDATE: return '' format = tweaks['gui_pubdate_display_format'] if format is None: @@ -194,7 +194,7 @@ class CcDateDelegate(QStyledItemDelegate): # {{{ def displayText(self, val, locale): d = val.toDate() - if d == UNDEFINED_QDATE: + if d <= UNDEFINED_QDATE: return '' return format_date(d.toPyDate(), self.format) @@ -217,7 +217,7 @@ class CcDateDelegate(QStyledItemDelegate): # {{{ def setModelData(self, editor, model, index): val = editor.date() - if val == UNDEFINED_QDATE: + if val <= UNDEFINED_QDATE: val = None model.setData(index, QVariant(val), Qt.EditRole) diff --git a/src/calibre/gui2/library/models.py b/src/calibre/gui2/library/models.py index dcc338dbdc..89008735fe 100644 --- a/src/calibre/gui2/library/models.py +++ b/src/calibre/gui2/library/models.py @@ -16,11 +16,13 @@ from calibre.gui2 import NONE, config, UNDEFINED_QDATE from calibre.utils.pyparsing import ParseException from calibre.ebooks.metadata import fmt_sidx, authors_to_string, string_to_authors from calibre.ptempfile import PersistentTemporaryFile -from calibre.utils.config import tweaks +from calibre.utils.config import tweaks, prefs from calibre.utils.date import dt_factory, qt_to_dt, isoformat from calibre.ebooks.metadata.meta import set_metadata as _set_metadata from calibre.utils.search_query_parser import SearchQueryParser -from calibre.library.caches import _match, CONTAINS_MATCH, EQUALS_MATCH, REGEXP_MATCH +from calibre.library.caches import _match, CONTAINS_MATCH, EQUALS_MATCH, \ + REGEXP_MATCH, CoverCache +from calibre.library.cli import parse_series_string from calibre import strftime, isbytestring, prepare_string_for_xml from calibre.constants import filesystem_encoding from calibre.gui2.library import DEFAULT_SORT @@ -42,6 +44,14 @@ class FormatPath(unicode): ans.deleted_after_upload = False return ans +_default_image = None + +def default_image(): + global _default_image + if _default_image is None: + _default_image = QImage(I('default_cover.svg')) + return _default_image + class BooksModel(QAbstractTableModel): # {{{ about_to_be_sorted = pyqtSignal(object, name='aboutToBeSorted') @@ -70,7 +80,7 @@ class BooksModel(QAbstractTableModel): # {{{ self.book_on_device = None self.editable_cols = ['title', 'authors', 'rating', 'publisher', 'tags', 'series', 'timestamp', 'pubdate'] - self.default_image = QImage(I('book.svg')) + self.default_image = default_image() self.sorted_on = DEFAULT_SORT self.sort_history = [self.sorted_on] self.last_search = '' # The last search performed on this model @@ -140,21 +150,22 @@ class BooksModel(QAbstractTableModel): # {{{ self.build_data_convertors() self.reset() self.database_changed.emit(db) + if self.cover_cache is not None: + self.cover_cache.stop() + self.cover_cache = CoverCache(db) + self.cover_cache.start() + def refresh_cover(event, ids): + if event == 'cover' and self.cover_cache is not None: + self.cover_cache.refresh(ids) + db.add_listener(refresh_cover) def refresh_ids(self, ids, current_row=-1): rows = self.db.refresh_ids(ids) if rows: self.refresh_rows(rows, current_row=current_row) - def refresh_cover_cache(self, ids): - if self.cover_cache: - self.cover_cache.refresh(ids) - def refresh_rows(self, rows, current_row=-1): for row in rows: - if self.cover_cache: - id = self.db.id(row) - self.cover_cache.refresh([id]) if row == current_row: self.new_bookdisplay_data.emit( self.get_book_display_info(row)) @@ -317,7 +328,7 @@ class BooksModel(QAbstractTableModel): # {{{ def set_cache(self, idx): l, r = 0, self.count()-1 - if self.cover_cache: + if self.cover_cache is not None: l = max(l, idx-self.buffer_size) r = min(r, idx+self.buffer_size) k = min(r-idx, idx-l) @@ -481,15 +492,18 @@ class BooksModel(QAbstractTableModel): # {{{ def title(self, row_number): return self.db.title(row_number) + def rating(self, row_number): + ans = self.db.rating(row_number) + ans = ans/2 if ans else 0 + return int(ans) + def cover(self, row_number): data = None try: id = self.db.id(row_number) - if self.cover_cache: + if self.cover_cache is not None: img = self.cover_cache.cover(id) - if img: - if img.isNull(): - img = self.default_image + if not img.isNull(): return img if not data: data = self.db.cover(row_number) @@ -520,7 +534,7 @@ class BooksModel(QAbstractTableModel): # {{{ return QVariant(', '.join(sorted(tags.split(',')))) return None - def series(r, idx=-1, siix=-1): + def series_type(r, idx=-1, siix=-1): series = self.db.data[r][idx] if series: idx = fmt_sidx(self.db.data[r][siix]) @@ -591,7 +605,7 @@ class BooksModel(QAbstractTableModel): # {{{ idx=self.db.field_metadata['publisher']['rec_index'], mult=False), 'tags' : functools.partial(tags, idx=self.db.field_metadata['tags']['rec_index']), - 'series' : functools.partial(series, + 'series' : functools.partial(series_type, idx=self.db.field_metadata['series']['rec_index'], siix=self.db.field_metadata['series_index']['rec_index']), 'ondevice' : functools.partial(text_type, @@ -620,6 +634,9 @@ class BooksModel(QAbstractTableModel): # {{{ bool_cols_are_tristate=tweaks['bool_custom_columns_are_tristate'] == 'yes') elif datatype == 'rating': self.dc[col] = functools.partial(rating_type, idx=idx) + elif datatype == 'series': + self.dc[col] = functools.partial(series_type, idx=idx, + siix=self.db.field_metadata.cc_series_index_column_for(col)) else: print 'What type is this?', col, datatype # build a index column to data converter map, to remove the string lookup in the data loop @@ -681,6 +698,8 @@ class BooksModel(QAbstractTableModel): # {{{ def set_custom_column_data(self, row, colhead, value): typ = self.custom_columns[colhead]['datatype'] + label=self.db.field_metadata.key_to_label(colhead) + s_index = None if typ in ('text', 'comments'): val = unicode(value.toString()).strip() val = val if val else None @@ -702,9 +721,10 @@ class BooksModel(QAbstractTableModel): # {{{ if not val.isValid(): return False val = qt_to_dt(val, as_utc=False) - self.db.set_custom(self.db.id(row), val, - label=self.db.field_metadata.key_to_label(colhead), - num=None, append=False, notify=True) + elif typ == 'series': + val, s_index = parse_series_string(self.db, label, value.toString()) + self.db.set_custom(self.db.id(row), val, extra=s_index, + label=label, num=None, append=False, notify=True) return True def setData(self, index, value, role): @@ -850,6 +870,7 @@ class OnDeviceSearch(SearchQueryParser): # {{{ class DeviceBooksModel(BooksModel): # {{{ booklist_dirtied = pyqtSignal() + upload_collections = pyqtSignal(object) def __init__(self, parent): BooksModel.__init__(self, parent) @@ -920,11 +941,13 @@ class DeviceBooksModel(BooksModel): # {{{ if index.isValid() and self.editable: cname = self.column_map[index.column()] if cname in ('title', 'authors') or \ - (cname == 'collections' and self.db.supports_collections()): + (cname == 'collections' and \ + callable(getattr(self.db, 'supports_collections', None)) and \ + self.db.supports_collections() and \ + prefs['manage_device_metadata']=='manual'): flags |= Qt.ItemIsEditable return flags - def search(self, text, reset=True): if not text or not text.strip(): self.map = list(range(len(self.db))) @@ -970,8 +993,8 @@ class DeviceBooksModel(BooksModel): # {{{ x, y = int(self.db[x].size), int(self.db[y].size) return cmp(x, y) def tagscmp(x, y): - x = ','.join(self.db[x].device_collections) - y = ','.join(self.db[y].device_collections) + x = ','.join(sorted(getattr(self.db[x], 'device_collections', []))).lower() + y = ','.join(sorted(getattr(self.db[y], 'device_collections', []))).lower() return cmp(x, y) def libcmp(x, y): x, y = self.db[x].in_library, self.db[y].in_library @@ -1072,6 +1095,36 @@ class DeviceBooksModel(BooksModel): # {{{ res.append((r,b)) return res + def get_collections_with_ids(self): + collections = set() + for book in self.db: + if book.device_collections is not None: + collections.update(set(book.device_collections)) + self.collections = [] + result = [] + for i,collection in enumerate(collections): + result.append((i, collection)) + self.collections.append(collection) + return result + + def rename_collection(self, old_id, new_name): + old_name = self.collections[old_id] + for book in self.db: + if book.device_collections is None: + continue + if old_name in book.device_collections: + book.device_collections.remove(old_name) + if new_name not in book.device_collections: + book.device_collections.append(new_name) + + def delete_collection_using_id(self, old_id): + old_name = self.collections[old_id] + for book in self.db: + if book.device_collections is None: + continue + if old_name in book.device_collections: + book.device_collections.remove(old_name) + def indices(self, rows): ''' Return indices into underlying database from rows @@ -1102,6 +1155,7 @@ class DeviceBooksModel(BooksModel): # {{{ elif cname == 'collections': tags = self.db[self.map[row]].device_collections if tags: + tags.sort(cmp=lambda x,y: cmp(x.lower(), y.lower())) return QVariant(', '.join(tags)) elif role == Qt.ToolTipRole and index.isValid(): if self.map[row] in self.indices_to_be_deleted(): @@ -1144,21 +1198,27 @@ class DeviceBooksModel(BooksModel): # {{{ return False val = unicode(value.toString()).strip() idx = self.map[row] + if cname == 'collections': + tags = [i.strip() for i in val.split(',')] + tags = [t for t in tags if t] + self.db[idx].device_collections = tags + self.dataChanged.emit(index, index) + self.upload_collections.emit(self.db) + return True + if cname == 'title' : self.db[idx].title = val elif cname == 'authors': self.db[idx].authors = string_to_authors(val) - elif cname == 'collections': - tags = [i.strip() for i in val.split(',')] - tags = [t for t in tags if t] - self.db[idx].device_collections = tags self.dataChanged.emit(index, index) self.booklist_dirtied.emit() done = True return done def set_editable(self, editable): - self.editable = editable + # Cannot edit if metadata is sent on connect. Reason: changes will + # revert to what is in the library on next connect. + self.editable = editable and prefs['manage_device_metadata']!='on_connect' def set_search_restriction(self, s): pass diff --git a/src/calibre/gui2/library/views.py b/src/calibre/gui2/library/views.py index b949306294..c6c32f86f7 100644 --- a/src/calibre/gui2/library/views.py +++ b/src/calibre/gui2/library/views.py @@ -15,7 +15,7 @@ from calibre.gui2.library.delegates import RatingDelegate, PubDateDelegate, \ TextDelegate, DateDelegate, TagsDelegate, CcTextDelegate, \ CcBoolDelegate, CcCommentsDelegate, CcDateDelegate from calibre.gui2.library.models import BooksModel, DeviceBooksModel -from calibre.utils.config import tweaks +from calibre.utils.config import tweaks, prefs from calibre.gui2 import error_dialog, gprefs from calibre.gui2.library import DEFAULT_SORT @@ -347,7 +347,7 @@ class BooksView(QTableView): # {{{ self.setItemDelegateForColumn(cm.index(colhead), delegate) elif cc['datatype'] == 'comments': self.setItemDelegateForColumn(cm.index(colhead), self.cc_comments_delegate) - elif cc['datatype'] == 'text': + elif cc['datatype'] in ('text', 'series'): if cc['is_multiple']: self.setItemDelegateForColumn(cm.index(colhead), self.tags_delegate) else: @@ -371,7 +371,8 @@ class BooksView(QTableView): # {{{ # Context Menu {{{ def set_context_menu(self, edit_metadata, send_to_device, convert, view, save, open_folder, book_details, delete, - similar_menu=None, add_to_library=None): + similar_menu=None, add_to_library=None, + edit_device_collections=None): self.setContextMenuPolicy(Qt.DefaultContextMenu) self.context_menu = QMenu(self) if edit_metadata is not None: @@ -393,6 +394,10 @@ class BooksView(QTableView): # {{{ if add_to_library is not None: func = partial(add_to_library[1], view=self) self.context_menu.addAction(add_to_library[0], func) + if edit_device_collections is not None: + func = partial(edit_device_collections[1], view=self) + self.edit_collections_menu = \ + self.context_menu.addAction(edit_device_collections[0], func) def contextMenuEvent(self, event): self.context_menu.popup(event.globalPos()) @@ -494,6 +499,14 @@ class DeviceBooksView(BooksView): # {{{ self.setDragDropMode(self.NoDragDrop) self.setAcceptDrops(False) + def contextMenuEvent(self, event): + self.edit_collections_menu.setVisible( + callable(getattr(self._model.db, 'supports_collections', None)) and \ + self._model.db.supports_collections() and \ + prefs['manage_device_metadata'] == 'manual') + self.context_menu.popup(event.globalPos()) + event.accept() + def set_database(self, db): self._model.set_database(db) self.restore_state() @@ -505,6 +518,9 @@ class DeviceBooksView(BooksView): # {{{ def connect_dirtied_signal(self, slot): self._model.booklist_dirtied.connect(slot) + def connect_upload_collections_signal(self, func=None, oncard=None): + self._model.upload_collections.connect(partial(func, view=self, oncard=oncard)) + def dropEvent(self, *args): error_dialog(self, _('Not allowed'), _('Dropping onto a device is not supported. First add the book to the calibre library.')).exec_() diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index bd24af1619..ca896fc014 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -56,6 +56,8 @@ def init_qt(args): def get_default_library_path(): fname = _('Calibre Library') + if iswindows: + fname = 'Calibre Library' if isinstance(fname, unicode): try: fname = fname.encode(filesystem_encoding) diff --git a/src/calibre/gui2/main.ui b/src/calibre/gui2/main.ui deleted file mode 100644 index c863ff28f5..0000000000 --- a/src/calibre/gui2/main.ui +++ /dev/null @@ -1,569 +0,0 @@ - - - Kovid Goyal - MainWindow - - - - 0 - 0 - 1012 - 822 - - - - - 0 - 0 - - - - Qt::NoContextMenu - - - __appname__ - - - - :/images/library.png:/images/library.png - - - - - - - - - - 0 - 0 - - - - - 16777215 - 75 - - - - true - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - true - - - QAbstractItemView::NoSelection - - - QAbstractItemView::SelectRows - - - - 40 - 40 - - - - QListView::Static - - - QListView::LeftToRight - - - - 175 - 90 - - - - QListView::ListMode - - - true - - - - - - - PointingHandCursor - - - ... - - - - :/images/donate.svg:/images/donate.svg - - - - 64 - 64 - - - - true - - - - - - - - - - 0 - 0 - - - - - 16777215 - 90 - - - - - - - Qt::RichText - - - true - - - - - - - - - - - 6 - - - 0 - - - - - &Restrict to: - - - search_restriction - - - - - - - - 150 - 16777215 - - - - Books display will be restricted to those matching the selected saved search - - - - - - - set in ui.py - - - - - - - Advanced search - - - ... - - - - :/images/search.svg:/images/search.svg - - - Alt+S - - - - - - - &Search: - - - search - - - - - - - - 0 - 0 - - - - - 700 - 16777215 - - - - <p>Search the list of books by title, author, publisher, tags, comments, etc.<br><br>Words separated by spaces are ANDed - - - <p>Search the list of books by title, author, publisher, tags, comments, etc.<br><br>Words separated by spaces are ANDed - - - - - - - Reset Quick Search - - - ... - - - - :/images/clear_left.svg:/images/clear_left.svg - - - - - - - - 150 - 16777215 - - - - Choose saved search or enter name for new saved search - - - 15 - - - - - - - Copy current search text (instead of search name) - - - ... - - - - :/images/search_copy_saved.svg:/images/search_copy_saved.svg - - - - - - - Save current search under the name shown in the box - - - ... - - - - :/images/search_add_saved.svg:/images/search_add_saved.svg - - - - - - - Delete current saved search - - - ... - - - - :/images/search_delete_saved.svg:/images/search_delete_saved.svg - - - - - - - - - - - 0 - 0 - - - - Qt::PreventContextMenu - - - false - - - Qt::Horizontal - - - - 48 - 48 - - - - Qt::ToolButtonTextUnderIcon - - - TopToolBarArea - - - false - - - - - - - - - - - - - - - - - :/images/add_book.svg:/images/add_book.svg - - - Add books - - - A - - - false - - - - - - :/images/trash.svg:/images/trash.svg - - - Remove books - - - Remove books - - - Del - - - - - - :/images/edit_input.svg:/images/edit_input.svg - - - Edit meta information - - - E - - - false - - - - - - :/images/merge_books.svg:/images/merge_books.svg - - - Merge book records - - - M - - - false - - - - - false - - - - :/images/sync.svg:/images/sync.svg - - - Send to device - - - - - - :/images/save.svg:/images/save.svg - - - Save to disk - - - S - - - - - - :/images/news.svg:/images/news.svg - - - Fetch news - - - F - - - - - - :/images/convert.svg:/images/convert.svg - - - Convert E-books - - - C - - - - - - :/images/view.svg:/images/view.svg - - - View - - - V - - - - - - :/images/document_open.svg:/images/document_open.svg - - - Open containing folder - - - - - - :/images/dialog_information.svg:/images/dialog_information.svg - - - Show book details - - - - - - :/images/user_profile.svg:/images/user_profile.svg - - - Books by same author - - - - - - :/images/books_in_series.svg:/images/books_in_series.svg - - - Books in this series - - - - - - :/images/publisher.png:/images/publisher.png - - - Books by this publisher - - - - - - :/images/tags.svg:/images/tags.svg - - - Books with the same tags - - - - - - :/images/config.svg:/images/config.svg - - - Preferences - - - Configure calibre - - - Ctrl+P - - - - - - LocationView - QListView -

widgets.h
- - - SearchBox2 - QComboBox -
calibre.gui2.search_box
-
- - SavedSearchBox - QComboBox -
calibre.gui2.search_box
-
- - - - - - diff --git a/src/calibre/gui2/pictureflow/pictureflow.cpp b/src/calibre/gui2/pictureflow/pictureflow.cpp index d1434e763c..1c63ec410c 100644 --- a/src/calibre/gui2/pictureflow/pictureflow.cpp +++ b/src/calibre/gui2/pictureflow/pictureflow.cpp @@ -75,10 +75,6 @@ #include -// uncomment this to enable bilinear filtering for texture mapping -// gives much better rendering, at the cost of memory space -// #define PICTUREFLOW_BILINEAR_FILTER - // for fixed-point arithmetic, we need minimum 32-bit long // long long (64-bit) might be useful for multiplication and division typedef long PFreal; @@ -88,6 +84,7 @@ typedef unsigned short QRgb565; #define REFLECTION_FACTOR 1.5 #define MAX(x, y) ((x > y) ? x : y) +#define MIN(x, y) ((x < y) ? x : y) #define RGB565_RED_MASK 0xF800 #define RGB565_GREEN_MASK 0x07E0 @@ -376,7 +373,6 @@ private: int slideWidth; int slideHeight; int fontSize; - int zoom; int queueLength; int centerIndex; @@ -401,6 +397,7 @@ private: void recalc(int w, int h); QRect renderSlide(const SlideInfo &slide, int alpha=256, int col1=-1, int col=-1); + QRect renderCenterSlide(const SlideInfo &slide); QImage* surface(int slideIndex); void triggerRender(); void resetSlides(); @@ -414,7 +411,6 @@ PictureFlowPrivate::PictureFlowPrivate(PictureFlow* w, int queueLength_) slideWidth = 200; slideHeight = 200; fontSize = 10; - zoom = 100; centerIndex = 0; queueLength = queueLength_; @@ -464,21 +460,6 @@ void PictureFlowPrivate::setSlideSize(QSize size) triggerRender(); } -int PictureFlowPrivate::zoomFactor() const -{ - return zoom; -} - -void PictureFlowPrivate::setZoomFactor(int z) -{ - if(z <= 0) - return; - - zoom = z; - recalc(buffer.width(), buffer.height()); - triggerRender(); -} - QImage PictureFlowPrivate::slide(int index) const { return slideImages->image(index); @@ -554,7 +535,8 @@ void PictureFlowPrivate::resize(int w, int h) if (w < 10) w = 10; if (h < 10) h = 10; slideHeight = int(float(h)/REFLECTION_FACTOR); - slideWidth = int(float(slideHeight) * 2/3.); + slideWidth = int(float(slideHeight) * 3./4.); + //qDebug() << slideHeight << "x" << slideWidth; fontSize = MAX(int(h/15.), 12); recalc(w, h); resetSlides(); @@ -595,17 +577,12 @@ void PictureFlowPrivate::resetSlides() } } -#define BILINEAR_STRETCH_HOR 4 -#define BILINEAR_STRETCH_VER 4 - static QImage prepareSurface(QImage img, int w, int h) { - Qt::TransformationMode mode = Qt::SmoothTransformation; - img = img.scaled(w, h, Qt::IgnoreAspectRatio, mode); + img = img.scaled(w, h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation); - // slightly larger, to accomodate for the reflection + // slightly larger, to accommodate for the reflection int hs = int(h * REFLECTION_FACTOR); - int hofs = 0; // offscreen buffer: black is sweet QImage result(hs, w, QImage::Format_RGB16); @@ -616,29 +593,22 @@ static QImage prepareSurface(QImage img, int w, int h) // (and much better and faster to work row-wise, i.e in one scanline) for(int x = 0; x < w; x++) for(int y = 0; y < h; y++) - result.setPixel(hofs + y, x, img.pixel(x, y)); + result.setPixel(y, x, img.pixel(x, y)); // create the reflection - int ht = hs - h - hofs; - int hte = ht; + int ht = hs - h; for(int x = 0; x < w; x++) for(int y = 0; y < ht; y++) { QRgb color = img.pixel(x, img.height()-y-1); //QRgb565 color = img.scanLine(img.height()-y-1) + x*sizeof(QRgb565); //img.pixel(x, img.height()-y-1); int a = qAlpha(color); - int r = qRed(color) * a / 256 * (hte - y) / hte * 3/5; - int g = qGreen(color) * a / 256 * (hte - y) / hte * 3/5; - int b = qBlue(color) * a / 256 * (hte - y) / hte * 3/5; - result.setPixel(h+hofs+y, x, qRgb(r, g, b)); + int r = qRed(color) * a / 256 * (ht - y) / ht * 3/5; + int g = qGreen(color) * a / 256 * (ht - y) / ht * 3/5; + int b = qBlue(color) * a / 256 * (ht - y) / ht * 3/5; + result.setPixel(h+y, x, qRgb(r, g, b)); } -#ifdef PICTUREFLOW_BILINEAR_FILTER - int hh = BILINEAR_STRETCH_VER*hs; - int ww = BILINEAR_STRETCH_HOR*w; - result = result.scaled(hh, ww, Qt::IgnoreAspectRatio, Qt::SmoothTransformation); -#endif - return result; } @@ -699,8 +669,12 @@ void PictureFlowPrivate::render() int nleft = leftSlides.count(); int nright = rightSlides.count(); + QRect r; - QRect r = renderSlide(centerSlide); + if (step == 0) + r = renderCenterSlide(centerSlide); + else + r = renderSlide(centerSlide); int c1 = r.left(); int c2 = r.right(); @@ -732,9 +706,12 @@ void PictureFlowPrivate::render() painter.setPen(Qt::white); //painter.setPen(QColor(255,255,255,127)); - if (centerIndex < slideCount() && centerIndex > -1) - painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2-fontSize*3), + if (centerIndex < slideCount() && centerIndex > -1) { + painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2-fontSize*4), Qt::AlignCenter, slideImages->caption(centerIndex)); + painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2-fontSize*2), + Qt::AlignCenter, slideImages->subtitle(centerIndex)); + } painter.end(); @@ -785,15 +762,22 @@ void PictureFlowPrivate::render() int sc = slideCount(); painter.setPen(QColor(255,255,255, (255-fade) )); - if (leftTextIndex < sc && leftTextIndex > -1) - painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - fontSize*3), + if (leftTextIndex < sc && leftTextIndex > -1) { + painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - fontSize*4), Qt::AlignCenter, slideImages->caption(leftTextIndex)); + painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - fontSize*2), + Qt::AlignCenter, slideImages->subtitle(leftTextIndex)); + + } painter.setPen(QColor(255,255,255, fade)); - if (leftTextIndex+1 < sc && leftTextIndex > -2) - painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - fontSize*3), + if (leftTextIndex+1 < sc && leftTextIndex > -2) { + painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - fontSize*4), Qt::AlignCenter, slideImages->caption(leftTextIndex+1)); + painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - fontSize*2), + Qt::AlignCenter, slideImages->subtitle(leftTextIndex+1)); + } painter.end(); } @@ -813,7 +797,31 @@ static inline uint BYTE_MUL_RGB16_32(uint x, uint a) { return t; } +QRect PictureFlowPrivate::renderCenterSlide(const SlideInfo &slide) { + QImage* src = surface(slide.slideIndex); + if(!src) + return QRect(); + int sw = src->height(); + int sh = src->width(); + int h = buffer.height(); + int srcoff = 0; + int left = buffer.width()/2 - sw/2; + if (left < 0) { + srcoff = -left; + sw += left; + left = 0; + } + QRect rect(left, 0, sw, h-1); + int xcon = MIN(h-1, sh-1); + int ycon = MIN(sw, buffer.width() - left); + + for(int x = 0; x < xcon; x++) + for(int y = 0; y < ycon; y++) + buffer.setPixel(left + y, 1+x, src->pixel(x, srcoff+y)); + + return rect; +} // Renders a slide to offscreen buffer. Returns a rect of the rendered area. // alpha=256 means normal, alpha=0 is fully black, alpha=128 half transparent // col1 and col2 limit the column for rendering. @@ -826,13 +834,8 @@ int col1, int col2) QRect rect(0, 0, 0, 0); -#ifdef PICTUREFLOW_BILINEAR_FILTER - int sw = src->height() / BILINEAR_STRETCH_HOR; - int sh = src->width() / BILINEAR_STRETCH_VER; -#else int sw = src->height(); int sh = src->width(); -#endif int h = buffer.height(); int w = buffer.width(); @@ -848,7 +851,7 @@ int col1, int col2) col1 = qMin(col1, w-1); col2 = qMin(col2, w-1); - int distance = h * 100 / zoom; + int distance = h; PFreal sdx = fcos(slide.angle); PFreal sdy = fsin(slide.angle); PFreal xs = slide.cx - slideWidth * sdx/2; @@ -878,15 +881,9 @@ int col1, int col2) PFreal hitx = fmul(dist, rays[x]); PFreal hitdist = fdiv(hitx - slide.cx, sdx); -#ifdef PICTUREFLOW_BILINEAR_FILTER - int column = sw*BILINEAR_STRETCH_HOR/2 + (hitdist*BILINEAR_STRETCH_HOR >> PFREAL_SHIFT); - if(column >= sw*BILINEAR_STRETCH_HOR) - break; -#else int column = sw/2 + (hitdist >> PFREAL_SHIFT); if(column >= sw) break; -#endif if(column < 0) continue; @@ -901,13 +898,8 @@ int col1, int col2) QRgb565* pixel2 = (QRgb565*)(buffer.scanLine(y2)) + x; int pixelstep = pixel2 - pixel1; -#ifdef PICTUREFLOW_BILINEAR_FILTER - int center = (sh*BILINEAR_STRETCH_VER/2); - int dy = dist*BILINEAR_STRETCH_VER / h; -#else int center = sh/2; int dy = dist / h; -#endif int p1 = center*PFREAL_ONE - dy/2; int p2 = center*PFREAL_ONE + dy/2; @@ -1155,16 +1147,6 @@ void PictureFlow::setSlideSize(QSize size) d->setSlideSize(size); } -int PictureFlow::zoomFactor() const -{ - return d->zoomFactor(); -} - -void PictureFlow::setZoomFactor(int z) -{ - d->setZoomFactor(z); -} - QImage PictureFlow::slide(int index) const { return d->slide(index); @@ -1400,5 +1382,6 @@ void PictureFlow::emitcurrentChanged(int index) { emit currentChanged(index); } int FlowImages::count() { return 0; } QImage FlowImages::image(int index) { index=0; return QImage(); } QString FlowImages::caption(int index) {index=0; return QString(); } +QString FlowImages::subtitle(int index) {index=0; return QString(); } // }}} diff --git a/src/calibre/gui2/pictureflow/pictureflow.h b/src/calibre/gui2/pictureflow/pictureflow.h index 8cce025180..f2c2c947e6 100644 --- a/src/calibre/gui2/pictureflow/pictureflow.h +++ b/src/calibre/gui2/pictureflow/pictureflow.h @@ -67,6 +67,7 @@ public: virtual int count(); virtual QImage image(int index); virtual QString caption(int index); + virtual QString subtitle(int index); signals: void dataChanged(); @@ -91,7 +92,6 @@ Q_OBJECT Q_PROPERTY(int currentSlide READ currentSlide WRITE setCurrentSlide) Q_PROPERTY(QSize slideSize READ slideSize WRITE setSlideSize) - Q_PROPERTY(int zoomFactor READ zoomFactor WRITE setZoomFactor) public: /*! @@ -120,16 +120,6 @@ public: */ void setSlideSize(QSize size); - /*! - Sets the zoom factor (in percent). - */ - void setZoomFactor(int zoom); - - /*! - Returns the zoom factor (in percent). - */ - int zoomFactor() const; - /*! Clears any caches held to free up memory */ diff --git a/src/calibre/gui2/pictureflow/pictureflow.sip b/src/calibre/gui2/pictureflow/pictureflow.sip index 9202dd8ad5..f05f0ee3d1 100644 --- a/src/calibre/gui2/pictureflow/pictureflow.sip +++ b/src/calibre/gui2/pictureflow/pictureflow.sip @@ -16,6 +16,7 @@ public: virtual int count(); virtual QImage image(int index); virtual QString caption(int index); + virtual QString subtitle(int index); signals: void dataChanged(); @@ -40,10 +41,6 @@ public : void setSlideSize(QSize size); - void setZoomFactor(int zoom); - - int zoomFactor() const; - void clearCaches(); virtual QImage slide(int index) const; diff --git a/src/calibre/gui2/search_box.py b/src/calibre/gui2/search_box.py index 35bf7374a0..dd7d0a63a0 100644 --- a/src/calibre/gui2/search_box.py +++ b/src/calibre/gui2/search_box.py @@ -6,6 +6,8 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' +import re + from PyQt4.Qt import QComboBox, Qt, QLineEdit, QStringList, pyqtSlot, \ pyqtSignal, SIGNAL, QObject, QDialog, QCompleter, \ QAction, QKeySequence @@ -56,7 +58,8 @@ class SearchBox2(QComboBox): To use this class: * Call initialize() - * Connect to the search() and cleared() signals from this widget + * Connect to the search() and cleared() signals from this widget. + * Connect to the cleared() signal to know when the box content changes * Call search_done() after every search is complete * Use clear() to clear back to the help message ''' @@ -75,6 +78,7 @@ class SearchBox2(QComboBox): type=Qt.DirectConnection) self.line_edit.mouse_released.connect(self.mouse_released, type=Qt.DirectConnection) + self.activated.connect(self.history_selected) self.setEditable(True) self.help_state = False self.as_you_type = True @@ -139,6 +143,9 @@ class SearchBox2(QComboBox): def key_pressed(self, event): self.normalize_state() + if self._in_a_search: + self.emit(SIGNAL('changed()')) + self._in_a_search = False if event.key() in (Qt.Key_Return, Qt.Key_Enter): self.do_search() self.timer = self.startTimer(self.__class__.INTERVAL) @@ -154,6 +161,10 @@ class SearchBox2(QComboBox): self.timer = None self.do_search() + def history_selected(self, text): + self.emit(SIGNAL('changed()')) + self.do_search() + @property def smart_text(self): text = unicode(self.currentText()).strip() @@ -345,6 +356,7 @@ class SearchBoxMixin(object): self.search.initialize('main_search_history', colorize=True, help_text=_('Search (For Advanced Search click the button to the left)')) self.connect(self.search, SIGNAL('cleared()'), self.search_box_cleared) + self.connect(self.search, SIGNAL('changed()'), self.search_box_changed) self.connect(self.clear_button, SIGNAL('clicked()'), self.search.clear) QObject.connect(self.advanced_search_button, SIGNAL('clicked(bool)'), self.do_advanced_search) @@ -358,12 +370,19 @@ class SearchBoxMixin(object): self.action_focus_search.triggered.connect(lambda x: self.search.setFocus(Qt.OtherFocusReason)) self.addAction(self.action_focus_search) + self.search.setStatusTip(re.sub(r'<\w+>', ' ', + unicode(self.search.toolTip()))) + self.advanced_search_button.setStatusTip(self.advanced_search_button.toolTip()) + self.clear_button.setStatusTip(self.clear_button.toolTip()) def search_box_cleared(self): self.tags_view.clear() self.saved_search.clear_to_help() self.set_number_of_books_shown() + def search_box_changed(self): + self.tags_view.clear() + def do_advanced_search(self, *args): d = SearchDialog(self) if d.exec_() == QDialog.Accepted: @@ -383,6 +402,12 @@ class SavedSearchBoxMixin(object): self.saved_search.delete_search_button_clicked) self.connect(self.copy_search_button, SIGNAL('clicked()'), self.saved_search.copy_search_button_clicked) + self.saved_search.setToolTip( + _('Choose saved search or enter name for new saved search')) + self.saved_search.setStatusTip(self.saved_search.toolTip()) + for x in ('copy', 'save', 'delete'): + b = getattr(self, x+'_search_button') + b.setStatusTip(b.toolTip()) def saved_searches_changed(self): diff --git a/src/calibre/gui2/search_restriction_mixin.py b/src/calibre/gui2/search_restriction_mixin.py index 287c3b2fc2..f677c839d8 100644 --- a/src/calibre/gui2/search_restriction_mixin.py +++ b/src/calibre/gui2/search_restriction_mixin.py @@ -7,10 +7,12 @@ Created on 10 Jun 2010 class SearchRestrictionMixin(object): def __init__(self): - self.search_restriction.activated[str].connect(self.apply_search_restriction) + self.search_restriction.initialize(help_text=_('Restrict to')) + self.search_restriction.activated[int].connect(self.apply_search_restriction) self.library_view.model().count_changed_signal.connect(self.restriction_count_changed) self.search_restriction.setSizeAdjustPolicy(self.search_restriction.AdjustToMinimumContentsLengthWithIcon) self.search_restriction.setMinimumContentsLength(10) + self.search_restriction.setStatusTip(self.search_restriction.toolTip()) ''' Adding and deleting books while restricted creates a complexity. When added, @@ -26,8 +28,8 @@ class SearchRestrictionMixin(object): if self.restriction_in_effect: self.set_number_of_books_shown() - def apply_search_restriction(self, r): - r = unicode(r) + def apply_search_restriction(self, i): + r = unicode(self.search_restriction.currentText()) if r is not None and r != '': self.restriction_in_effect = True restriction = 'search:"%s"'%(r) diff --git a/src/calibre/gui2/tag_view.py b/src/calibre/gui2/tag_view.py index daea4e86ea..2a9fb129ac 100644 --- a/src/calibre/gui2/tag_view.py +++ b/src/calibre/gui2/tag_view.py @@ -15,6 +15,7 @@ from PyQt4.Qt import Qt, QTreeView, QApplication, pyqtSignal, \ QAbstractItemModel, QVariant, QModelIndex, QMenu, \ QPushButton, QWidget, QItemDelegate +from calibre.ebooks.metadata import title_sort from calibre.gui2 import config, NONE from calibre.utils.config import prefs from calibre.library.field_metadata import TagsIcons @@ -680,9 +681,50 @@ class TagBrowserMixin(object): # {{{ self.tags_view.recount() def do_tags_list_edit(self, tag, category): - d = TagListEditor(self, self.library_view.model().db, tag, category) + db=self.library_view.model().db + if category == 'tags': + result = db.get_tags_with_ids() + compare = (lambda x,y:cmp(x.lower(), y.lower())) + elif category == 'series': + result = db.get_series_with_ids() + compare = (lambda x,y:cmp(title_sort(x).lower(), title_sort(y).lower())) + elif category == 'publisher': + result = db.get_publishers_with_ids() + compare = (lambda x,y:cmp(x.lower(), y.lower())) + else: # should be a custom field + cc_label = None + if category in db.field_metadata: + cc_label = db.field_metadata[category]['label'] + result = self.db.get_custom_items_with_ids(label=cc_label) + else: + result = [] + compare = (lambda x,y:cmp(x.lower(), y.lower())) + + d = TagListEditor(self, tag_to_match=tag, data=result, compare=compare) d.exec_() if d.result() == d.Accepted: + to_rename = d.to_rename # dict of new text to old id + to_delete = d.to_delete # list of ids + rename_func = None + if category == 'tags': + rename_func = db.rename_tag + delete_func = db.delete_tag_using_id + elif category == 'series': + rename_func = db.rename_series + delete_func = db.delete_series_using_id + elif category == 'publisher': + rename_func = db.rename_publisher + delete_func = db.delete_publisher_using_id + else: + rename_func = partial(db.rename_custom_item, label=cc_label) + delete_func = partial(db.delete_custom_item_using_id, label=cc_label) + if rename_func: + for text in to_rename: + for old_id in to_rename[text]: + rename_func(old_id, new_name=unicode(text)) + for item in to_delete: + delete_func(item) + # Clean up everything, as information could have changed for many books. self.library_view.model().refresh() self.tags_view.set_new_model() @@ -726,6 +768,9 @@ class TagBrowserWidget(QWidget): # {{{ for x in (_('Sort by name'), _('Sort by popularity'), _('Sort by average rating')): parent.sort_by.addItem(x) + parent.sort_by.setToolTip( + _('Set the sort order for entries in the Tag Browser')) + parent.sort_by.setStatusTip(parent.sort_by.toolTip()) parent.sort_by.setCurrentIndex(0) self._layout.addWidget(parent.sort_by) @@ -734,9 +779,16 @@ class TagBrowserWidget(QWidget): # {{{ parent.tag_match.addItem(x) parent.tag_match.setCurrentIndex(0) self._layout.addWidget(parent.tag_match) + parent.tag_match.setToolTip( + _('When selecting multiple entries in the Tag Browser ' + 'match any or all of them')) + parent.tag_match.setStatusTip(parent.tag_match.toolTip()) parent.edit_categories = QPushButton(_('Manage &user categories'), parent) self._layout.addWidget(parent.edit_categories) + parent.edit_categories.setToolTip( + _('Add your own categories to the Tag Browser')) + parent.edit_categories.setStatusTip(parent.edit_categories.toolTip()) # }}} diff --git a/src/calibre/gui2/throbber.py b/src/calibre/gui2/throbber.py new file mode 100644 index 0000000000..99c899c9f3 --- /dev/null +++ b/src/calibre/gui2/throbber.py @@ -0,0 +1,70 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai + +__license__ = 'GPL v3' +__copyright__ = '2010, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + + +from PyQt4.Qt import QToolButton, QSize, QPropertyAnimation, Qt, \ + QMetaObject + +from calibre.gui2 import config + +class ThrobbingButton(QToolButton): + + def __init__(self, *args): + QToolButton.__init__(self, *args) + self.animation = QPropertyAnimation(self, 'iconSize', self) + self.animation.setDuration(60/72.*1000) + self.animation.setLoopCount(4) + self.normal_icon_size = QSize(64, 64) + self.animation.valueChanged.connect(self.value_changed) + self.setCursor(Qt.PointingHandCursor) + self.animation.finished.connect(self.animation_finished) + + def set_normal_icon_size(self, w, h): + self.normal_icon_size = QSize(w, h) + self.setIconSize(self.normal_icon_size) + self.setMinimumSize(self.sizeHint()) + + def animation_finished(self): + self.setIconSize(self.normal_icon_size) + + def enterEvent(self, ev): + self.start_animation() + + def leaveEvent(self, ev): + self.stop_animation() + + def value_changed(self, val): + self.update() + + def start_animation(self): + if config['disable_animations']: return + if self.animation.state() != self.animation.Stopped or not self.isVisible(): + return + size = self.normal_icon_size.width() + smaller = int(0.7 * size) + self.animation.setStartValue(QSize(smaller, smaller)) + self.animation.setEndValue(self.normal_icon_size) + QMetaObject.invokeMethod(self.animation, 'start', Qt.QueuedConnection) + + def stop_animation(self): + self.animation.stop() + self.animation_finished() + + +if __name__ == '__main__': + from PyQt4.Qt import QApplication, QWidget, QHBoxLayout, QIcon + app = QApplication([]) + w = QWidget() + w.setLayout(QHBoxLayout()) + b = ThrobbingButton() + b.setIcon(QIcon(I('donate.svg'))) + w.layout().addWidget(b) + w.show() + b.set_normal_icon_size(64, 64) + b.start_animation() + + app.exec_() diff --git a/src/calibre/gui2/tools.py b/src/calibre/gui2/tools.py index 1f58f85383..9680b616e3 100644 --- a/src/calibre/gui2/tools.py +++ b/src/calibre/gui2/tools.py @@ -221,6 +221,8 @@ def fetch_scheduled_recipe(arg): if lf.get('base_font_size', 0.0) != 0.0: recs.append(('base_font_size', lf['base_font_size'], OptionRecommendation.HIGH)) + recs.append(('keep_ligatures', lf['keep_ligatures'], + OptionRecommendation.HIGH)) lr = load_defaults('lrf_output') if lr.get('header', False): diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index 6452890883..6bd7b2b502 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -12,18 +12,18 @@ __docformat__ = 'restructuredtext en' import collections, os, sys, textwrap, time from Queue import Queue, Empty from threading import Thread -from PyQt4.Qt import Qt, SIGNAL, QObject, QUrl, QTimer, \ +from PyQt4.Qt import Qt, SIGNAL, QObject, QTimer, \ QPixmap, QMenu, QIcon, pyqtSignal, \ - QDialog, QDesktopServices, \ + QDialog, \ QSystemTrayIcon, QApplication, QKeySequence, QAction, \ QMessageBox, QHelpEvent from calibre import prints, patheq -from calibre.constants import __version__, __appname__, isosx +from calibre.constants import __appname__, isosx from calibre.ptempfile import PersistentTemporaryFile from calibre.utils.config import prefs, dynamic from calibre.utils.ipc.server import Server -from calibre.gui2 import error_dialog, GetMetadata, \ +from calibre.gui2 import error_dialog, GetMetadata, open_local_file, \ gprefs, max_available_height, config, info_dialog from calibre.gui2.cover_flow import CoverFlowMixin from calibre.gui2.widgets import ProgressIndicator @@ -31,14 +31,13 @@ from calibre.gui2.wizard import move_library from calibre.gui2.dialogs.scheduler import Scheduler from calibre.gui2.update import UpdateMixin from calibre.gui2.main_window import MainWindow -from calibre.gui2.main_ui import Ui_MainWindow +from calibre.gui2.layout import MainWindowMixin from calibre.gui2.device import DeviceMixin from calibre.gui2.jobs import JobManager, JobsDialog, JobsButton from calibre.gui2.dialogs.config import ConfigDialog from calibre.gui2.dialogs.book_info import BookInfo from calibre.library.database2 import LibraryDatabase2 -from calibre.library.caches import CoverCache from calibre.gui2.init import ToolbarMixin, LibraryViewMixin, LayoutMixin from calibre.gui2.search_box import SearchBoxMixin, SavedSearchBoxMixin from calibre.gui2.search_restriction_mixin import SearchRestrictionMixin @@ -92,7 +91,7 @@ class SystemTrayIcon(QSystemTrayIcon): # {{{ # }}} -class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ +class Main(MainWindow, MainWindowMixin, DeviceMixin, ToolbarMixin, # {{{ TagBrowserMixin, CoverFlowMixin, LibraryViewMixin, SearchBoxMixin, SavedSearchBoxMixin, SearchRestrictionMixin, LayoutMixin, UpdateMixin, AnnotationsAction, AddAction, DeleteAction, @@ -121,7 +120,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.another_instance_wants_to_talk) self.check_messages_timer.start(1000) - Ui_MainWindow.__init__(self) + MainWindowMixin.__init__(self) # Jobs Button {{{ self.job_manager = JobManager() @@ -138,6 +137,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.restriction_in_effect = False self.progress_indicator = ProgressIndicator(self) + self.progress_indicator.pos = (0, 20) self.verbose = opts.verbose self.get_metadata = GetMetadata() self.upload_memory = {} @@ -163,6 +163,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.donate_action = self.system_tray_menu.addAction( QIcon(I('donate.svg')), _('&Donate to support calibre')) self.donate_button.setDefaultAction(self.donate_action) + self.donate_button.setStatusTip(self.donate_button.toolTip()) self.eject_action = self.system_tray_menu.addAction( QIcon(I('eject.svg')), _('&Eject connected device')) self.eject_action.setEnabled(False) @@ -202,18 +203,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.device_manager.umount_device) self.eject_action.triggered.connect(self.device_manager.umount_device) - ####################### Vanity ######################## - self.vanity_template = _('

For help see the: User Manual' - '
')%'http://calibre-ebook.com/user_manual' - dv = os.environ.get('CALIBRE_DEVELOP_FROM', None) - v = __version__ - if getattr(sys, 'frozen', False) and dv and os.path.abspath(dv) in sys.path: - v += '*' - self.vanity_template += _('%s: %s by Kovid Goyal ' - '%%(version)s
%%(device)s

')%(__appname__, v) - self.latest_version = ' ' - self.vanity.setText(self.vanity_template%dict(version=' ', device=' ')) - self.device_info = ' ' + #################### Update notification ################### UpdateMixin.__init__(self, opts) ####################### Setup Toolbar ##################### @@ -230,9 +220,6 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ if self.system_tray_icon.isVisible() and opts.start_in_tray: self.hide_windows() - self.cover_cache = CoverCache(self.library_path) - self.cover_cache.start() - self.library_view.model().cover_cache = self.cover_cache self.library_view.model().count_changed_signal.connect \ (self.location_view.count_changed) if not gprefs.get('quick_start_guide_added', False): @@ -294,6 +281,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.read_settings() self.finalize_layout() + self.donate_button.start_animation() def resizeEvent(self, ev): MainWindow.resizeEvent(self, ev) @@ -410,9 +398,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.tags_view.set_new_model() # in case columns changed self.tags_view.recount() self.create_device_menu() - self.set_device_menu_items_state(bool(self.device_connected), - self.device_connected == 'folder') - + self.set_device_menu_items_state(bool(self.device_connected)) if not patheq(self.library_path, d.database_location): newloc = d.database_location move_library(self.library_path, newloc, self, @@ -473,6 +459,8 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ self.search_restriction.setEnabled(False) for action in list(self.delete_menu.actions())[1:]: action.setEnabled(False) + # Reset the view in case something changed while it was invisible + self.current_view().reset() self.set_number_of_books_shown() @@ -557,7 +545,8 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ ''' MSG = _('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.') + 'donating to support its development. Your donation helps ' + 'keep calibre development going.') HTML = u''' @@ -575,7 +564,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ pt = PersistentTemporaryFile('_donate.htm') pt.write(HTML.encode('utf-8')) pt.close() - QDesktopServices.openUrl(QUrl.fromLocalFile(pt.name)) + open_local_file(pt.name) def confirm_quit(self): @@ -606,9 +595,10 @@ class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, # {{{ while self.spare_servers: self.spare_servers.pop().close() self.device_manager.keep_going = False - self.cover_cache.stop() + cc = self.library_view.model().cover_cache + if cc is not None: + cc.stop() self.hide_windows() - self.cover_cache.terminate() self.emailer.stop() try: try: diff --git a/src/calibre/gui2/update.py b/src/calibre/gui2/update.py index 9dcd4d9084..38612c46f2 100644 --- a/src/calibre/gui2/update.py +++ b/src/calibre/gui2/update.py @@ -3,13 +3,13 @@ __copyright__ = '2008, Kovid Goyal ' import traceback -from PyQt4.Qt import QThread, pyqtSignal, QDesktopServices, QUrl, Qt +from PyQt4.Qt import QThread, pyqtSignal, Qt, QUrl import mechanize from calibre.constants import __appname__, __version__, iswindows, isosx from calibre import browser from calibre.utils.config import prefs -from calibre.gui2 import config, dynamic, question_dialog +from calibre.gui2 import config, dynamic, question_dialog, open_url URL = 'http://status.calibre-ebook.com/latest' @@ -49,12 +49,8 @@ class UpdateMixin(object): def update_found(self, version): os = 'windows' if iswindows else 'osx' if isosx else 'linux' url = 'http://calibre-ebook.com/download_%s'%os - self.latest_version = '
' + _('' - 'Latest version: %s')%(url, version) - self.vanity.setText(self.vanity_template%\ - (dict(version=self.latest_version, - device=self.device_info))) - self.vanity.update() + self.status_bar.new_version_available(version, url) + if config.get('new_version_notification') and \ dynamic.get('update to version %s'%version, True): if question_dialog(self, _('Update available'), @@ -64,7 +60,7 @@ class UpdateMixin(object): 'ge?')%(__appname__, version)): url = 'http://calibre-ebook.com/download_'+\ ('windows' if iswindows else 'osx' if isosx else 'linux') - QDesktopServices.openUrl(QUrl(url)) + open_url(QUrl(url)) dynamic.set('update to version %s'%version, False) diff --git a/src/calibre/gui2/viewer/main.py b/src/calibre/gui2/viewer/main.py index fca3586f9d..ec88c3f886 100644 --- a/src/calibre/gui2/viewer/main.py +++ b/src/calibre/gui2/viewer/main.py @@ -6,7 +6,7 @@ from functools import partial from threading import Thread from PyQt4.Qt import QApplication, Qt, QIcon, QTimer, SIGNAL, QByteArray, \ - QDesktopServices, QDoubleSpinBox, QLabel, QTextBrowser, \ + QDoubleSpinBox, QLabel, QTextBrowser, \ QPainter, QBrush, QColor, QStandardItemModel, QPalette, \ QStandardItem, QUrl, QRegExpValidator, QRegExp, QLineEdit, \ QToolButton, QMenu, QInputDialog, QAction, QKeySequence @@ -17,7 +17,7 @@ from calibre.gui2.viewer.bookmarkmanager import BookmarkManager from calibre.gui2.widgets import ProgressIndicator from calibre.gui2.main_window import MainWindow from calibre.gui2 import Application, ORG_NAME, APP_UID, choose_files, \ - info_dialog, error_dialog + info_dialog, error_dialog, open_url from calibre.ebooks.oeb.iterator import EbookIterator from calibre.ebooks import DRMError from calibre.constants import islinux, isfreebsd @@ -472,7 +472,7 @@ class EbookViewer(MainWindow, Ui_EbookViewer): elif frag: self.view.scroll_to(frag) else: - QDesktopServices.openUrl(url) + open_url(url) def load_started(self): self.open_progress_indicator(_('Loading flow...')) diff --git a/src/calibre/gui2/viewer/main.ui b/src/calibre/gui2/viewer/main.ui index 9177f2713f..78d0d3b2da 100644 --- a/src/calibre/gui2/viewer/main.ui +++ b/src/calibre/gui2/viewer/main.ui @@ -243,7 +243,7 @@ - :/images/convert.svg:/images/convert.svg + :/images/edit_copy.svg:/images/edit_copy.svg Copy to clipboard diff --git a/src/calibre/gui2/widgets.py b/src/calibre/gui2/widgets.py index c32b79fb7c..97758482fc 100644 --- a/src/calibre/gui2/widgets.py +++ b/src/calibre/gui2/widgets.py @@ -5,26 +5,25 @@ Miscellaneous widgets used in the GUI ''' import re, os, traceback -from PyQt4.Qt import QListView, QIcon, QFont, QLabel, QListWidget, \ +from PyQt4.Qt import QIcon, QFont, QLabel, QListWidget, \ QListWidgetItem, QTextCharFormat, QApplication, \ QSyntaxHighlighter, QCursor, QColor, QWidget, \ - QPixmap, QPalette, QSplitterHandle, QToolButton, \ + QPixmap, QSplitterHandle, QToolButton, \ QAbstractListModel, QVariant, Qt, SIGNAL, pyqtSignal, \ - QRegExp, QSettings, QSize, QModelIndex, QSplitter, \ - QAbstractButton, QPainter, QLineEdit, QComboBox, \ + QRegExp, QSettings, QSize, QSplitter, \ + QPainter, QLineEdit, QComboBox, \ QMenu, QStringListModel, QCompleter, QStringList, \ - QTimer + QTimer, QRect from calibre.gui2 import NONE, error_dialog, pixmap_to_data, gprefs from calibre.gui2.filename_pattern_ui import Ui_Form -from calibre import fit_image, human_readable +from calibre import fit_image from calibre.utils.fonts import fontconfig from calibre.ebooks import BOOK_EXTENSIONS from calibre.ebooks.metadata.meta import metadata_from_filename from calibre.utils.config import prefs, XMLConfig from calibre.gui2.progress_indicator import ProgressIndicator as _ProgressIndicator -from calibre.constants import filesystem_encoding history = XMLConfig('history') @@ -38,12 +37,16 @@ class ProgressIndicator(QWidget): self.status.setWordWrap(True) self.status.setAlignment(Qt.AlignHCenter|Qt.AlignTop) self.setVisible(False) + self.pos = None def start(self, msg=''): view = self.parent() pwidth, pheight = view.size().width(), view.size().height() self.resize(pwidth, min(pheight, 250)) - self.move(0, (pheight-self.size().height())/2.) + if self.pos is None: + self.move(0, (pheight-self.size().height())/2.) + else: + self.move(self.pos[0], self.pos[1]) self.pi.resize(self.pi.sizeHint()) self.pi.move(int((self.size().width()-self.pi.size().width())/2.), 0) self.status.resize(self.size().width(), self.size().height()-self.pi.size().height()-10) @@ -146,10 +149,15 @@ class FormatList(QListWidget): return QListWidget.keyPressEvent(self, event) -class ImageView(QLabel): +class ImageView(QWidget): - MAX_WIDTH = 400 - MAX_HEIGHT = 300 + def __init__(self, parent=None): + QWidget.__init__(self, parent) + self._pixmap = QPixmap(self) + self.setMinimumSize(QSize(150, 200)) + self.setAcceptDrops(True) + + # Drag 'n drop {{{ DROPABBLE_EXTENSIONS = IMAGE_EXTENSIONS @classmethod @@ -186,13 +194,45 @@ class ImageView(QLabel): def dragMoveEvent(self, event): event.acceptProposedAction() + # }}} def setPixmap(self, pixmap): - QLabel.setPixmap(self, pixmap) - width, height = fit_image(pixmap.width(), pixmap.height(), self.MAX_WIDTH, self.MAX_HEIGHT)[1:] - self.setMaximumWidth(width) - self.setMaximumHeight(height) + if not isinstance(pixmap, QPixmap): + raise TypeError('Must use a QPixmap') + self._pixmap = pixmap + self.updateGeometry() + self.update() + def pixmap(self): + return self._pixmap + + def sizeHint(self): + if self._pixmap.isNull(): + return self.minimumSize() + return self._pixmap.size() + + def paintEvent(self, event): + QWidget.paintEvent(self, event) + pmap = self._pixmap + if pmap.isNull(): + return + w, h = pmap.width(), pmap.height() + cw, ch = self.rect().width(), self.rect().height() + scaled, nw, nh = fit_image(w, h, cw, ch) + if scaled: + pmap = pmap.scaled(nw, nh, Qt.IgnoreAspectRatio, + Qt.SmoothTransformation) + w, h = pmap.width(), pmap.height() + x = int(abs(cw - w)/2.) + y = int(abs(ch - h)/2.) + target = QRect(x, y, w, h) + p = QPainter(self) + p.setRenderHints(QPainter.Antialiasing | QPainter.SmoothPixmapTransform) + p.drawPixmap(target, pmap) + p.end() + + + # Clipboard copy/paste # {{{ def contextMenuEvent(self, ev): cm = QMenu(self) copy = cm.addAction(_('Copy Image')) @@ -215,189 +255,7 @@ class ImageView(QLabel): self.setPixmap(pmap) self.emit(SIGNAL('cover_changed(PyQt_PyObject)'), pixmap_to_data(pmap)) - - -class LocationModel(QAbstractListModel): - - def __init__(self, parent): - QAbstractListModel.__init__(self, parent) - self.icons = [QVariant(QIcon(I('library.png'))), - QVariant(QIcon(I('reader.svg'))), - QVariant(QIcon(I('sd.svg'))), - QVariant(QIcon(I('sd.svg')))] - self.text = [_('Library\n%d\nbooks'), - _('Reader\n%s\navailable'), - _('Card A\n%s\navailable'), - _('Card B\n%s\navailable')] - self.free = [-1, -1, -1] - self.count = 0 - self.highlight_row = 0 - self.library_tooltip = _('Click to see the books available on your computer') - self.tooltips = [ - self.library_tooltip, - _('Click to see the books in the main memory of your reader'), - _('Click to see the books on storage card A in your reader'), - _('Click to see the books on storage card B in your reader') - ] - - def database_changed(self, db): - lp = db.library_path - if not isinstance(lp, unicode): - lp = lp.decode(filesystem_encoding, 'replace') - self.tooltips[0] = self.library_tooltip + '\n\n' + \ - _('Books located at') + ' ' + lp - self.dataChanged.emit(self.index(0), self.index(0)) - - def rowCount(self, *args): - return 1 + len([i for i in self.free if i >= 0]) - - def get_device_row(self, row): - if row == 2 and self.free[1] == -1 and self.free[2] > -1: - row = 3 - return row - - def data(self, index, role): - row = index.row() - drow = self.get_device_row(row) - data = NONE - if role == Qt.DisplayRole: - text = self.text[drow]%(human_readable(self.free[drow-1])) if row > 0 \ - else self.text[drow]%self.count - data = QVariant(text) - elif role == Qt.DecorationRole: - data = self.icons[drow] - elif role == Qt.ToolTipRole: - data = QVariant(self.tooltips[drow]) - elif role == Qt.SizeHintRole: - data = QVariant(QSize(155, 90)) - elif role == Qt.FontRole: - font = QFont('monospace') - font.setBold(row == self.highlight_row) - data = QVariant(font) - elif role == Qt.ForegroundRole and row == self.highlight_row: - return QVariant(QApplication.palette().brush( - QPalette.HighlightedText)) - elif role == Qt.BackgroundRole and row == self.highlight_row: - return QVariant(QApplication.palette().brush( - QPalette.Highlight)) - - return data - - def device_connected(self, dev): - self.icons[1] = QIcon(dev.icon) - self.dataChanged.emit(self.index(1), self.index(1)) - - def headerData(self, section, orientation, role): - return NONE - - def update_devices(self, cp=(None, None), fs=[-1, -1, -1]): - if cp is None: - cp = (None, None) - if isinstance(cp, (str, unicode)): - cp = (cp, None) - if len(fs) < 3: - fs = list(fs) + [0] - self.free[0] = fs[0] - self.free[1] = fs[1] - self.free[2] = fs[2] - cpa, cpb = cp - self.free[1] = fs[1] if fs[1] is not None and cpa is not None else -1 - self.free[2] = fs[2] if fs[2] is not None and cpb is not None else -1 - self.reset() - self.emit(SIGNAL('devicesChanged()')) - - def location_changed(self, row): - self.highlight_row = row - self.emit(SIGNAL('dataChanged(QModelIndex,QModelIndex)'), - self.index(0), self.index(self.rowCount(QModelIndex())-1)) - - def location_for_row(self, row): - if row == 0: return 'library' - if row == 1: return 'main' - if row == 3: return 'cardb' - return 'carda' if self.free[1] > -1 else 'cardb' - -class LocationView(QListView): - - def __init__(self, parent): - QListView.__init__(self, parent) - self.setModel(LocationModel(self)) - self.reset() - self.currentChanged = self.current_changed - - self.eject_button = EjectButton(self) - self.eject_button.hide() - - self.connect(self, SIGNAL('entered(QModelIndex)'), self.item_entered) - self.connect(self, SIGNAL('viewportEntered()'), self.viewport_entered) - self.connect(self.eject_button, SIGNAL('clicked()'), lambda: self.emit(SIGNAL('umount_device()'))) - self.connect(self.model(), SIGNAL('devicesChanged()'), self.eject_button.hide) - - def count_changed(self, new_count): - self.model().count = new_count - self.model().reset() - - def current_changed(self, current, previous): - if current.isValid(): - i = current.row() - location = self.model().location_for_row(i) - self.emit(SIGNAL('location_selected(PyQt_PyObject)'), location) - self.model().location_changed(i) - - def location_changed(self, row): - if 0 <= row and row <= 3: - self.model().location_changed(row) - - def leaveEvent(self, event): - self.unsetCursor() - self.eject_button.hide() - - def item_entered(self, location): - self.setCursor(Qt.PointingHandCursor) - self.eject_button.hide() - - if location.row() == 1: - rect = self.visualRect(location) - - self.eject_button.resize(rect.height()/2, rect.height()/2) - - x, y = rect.left(), rect.top() - x = x + (rect.width() - self.eject_button.width() - 2) - y += 6 - - self.eject_button.move(x, y) - self.eject_button.show() - - def viewport_entered(self): - self.unsetCursor() - self.eject_button.hide() - - -class EjectButton(QAbstractButton): - - def __init__(self, parent): - QAbstractButton.__init__(self, parent) - self.mouse_over = False - - def enterEvent(self, event): - self.mouse_over = True - - def leaveEvent(self, event): - self.mouse_over = False - - def paintEvent(self, event): - painter = QPainter(self) - painter.setClipRect(event.rect()) - image = QPixmap(I('eject')).scaledToHeight(event.rect().height(), - Qt.SmoothTransformation) - - if not self.mouse_over: - alpha_mask = QPixmap(image.width(), image.height()) - color = QColor(128, 128, 128) - alpha_mask.fill(color) - image.setAlphaChannel(alpha_mask) - - painter.drawPixmap(0, 0, image) + # }}} @@ -680,6 +538,53 @@ class HistoryLineEdit(QComboBox): def text(self): return self.currentText() +class ComboBoxWithHelp(QComboBox): + ''' + A combobox where item 0 is help text. CurrentText will return '' for item 0. + Be sure to always fetch the text with currentText. Don't use the signals + that pass a string, because they will not correct the text. + ''' + def __init__(self, parent=None): + QComboBox.__init__(self, parent) + self.currentIndexChanged[int].connect(self.index_changed) + self.help_text = '' + self.state_set = False + + def initialize(self, help_text=_('Search')): + self.help_text = help_text + self.set_state() + + def set_state(self): + if not self.state_set: + if self.currentIndex() == 0: + self.setItemText(0, self.help_text) + self.setStyleSheet('QComboBox { color: gray }') + else: + self.setItemText(0, '') + self.setStyleSheet('QComboBox { color: black }') + + def index_changed(self, index): + self.state_set = False + self.set_state() + + def currentText(self): + if self.currentIndex() == 0: + return '' + return QComboBox.currentText(self) + + def itemText(self, idx): + if idx == 0: + return '' + return QComboBox.itemText(self, idx) + + def showPopup(self): + self.setItemText(0, '') + QComboBox.showPopup(self) + + def hidePopup(self): + QComboBox.hidePopup(self) + self.set_state() + class PythonHighlighter(QSyntaxHighlighter): Rules = [] @@ -957,16 +862,21 @@ class LayoutButton(QToolButton): self.splitter = splitter splitter.state_changed.connect(self.update_state) + self.setCursor(Qt.PointingHandCursor) def set_state_to_show(self, *args): self.setChecked(False) label =_('Show') self.setText(label + ' ' + self.label) + self.setToolTip(self.text()) + self.setStatusTip(self.text()) def set_state_to_hide(self, *args): self.setChecked(True) label = _('Hide') self.setText(label + ' ' + self.label) + self.setToolTip(self.text()) + self.setStatusTip(self.text()) def update_state(self, *args): if self.splitter.is_side_index_hidden: diff --git a/src/calibre/library/caches.py b/src/calibre/library/caches.py index 57f9d0baaf..af950a36fc 100644 --- a/src/calibre/library/caches.py +++ b/src/calibre/library/caches.py @@ -6,11 +6,13 @@ __license__ = 'GPL v3' __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import collections, glob, os, re, itertools, functools +import re, itertools, functools from itertools import repeat from datetime import timedelta +from threading import Thread, RLock +from Queue import Queue, Empty -from PyQt4.Qt import QThread, QReadWriteLock, QImage, Qt +from PyQt4.Qt import QImage, Qt from calibre.utils.config import tweaks from calibre.utils.date import parse_date, now, UNDEFINED_DATE @@ -19,120 +21,73 @@ from calibre.utils.pyparsing import ParseException from calibre.ebooks.metadata import title_sort from calibre import fit_image -class CoverCache(QThread): +class CoverCache(Thread): - def __init__(self, library_path, parent=None): - QThread.__init__(self, parent) - self.library_path = library_path - self.id_map = None - self.id_map_lock = QReadWriteLock() - self.load_queue = collections.deque() - self.load_queue_lock = QReadWriteLock(QReadWriteLock.Recursive) - self.cache = {} - self.cache_lock = QReadWriteLock() - self.id_map_stale = True + def __init__(self, db): + Thread.__init__(self) + self.daemon = True + self.db = db + self.load_queue = Queue() self.keep_running = True - - def build_id_map(self): - self.id_map_lock.lockForWrite() - self.id_map = {} - for f in glob.glob(os.path.join(self.library_path, '*', '* (*)', 'cover.jpg')): - c = os.path.basename(os.path.dirname(f)) - try: - id = int(re.search(r'\((\d+)\)', c[c.rindex('('):]).group(1)) - self.id_map[id] = f - except: - continue - self.id_map_lock.unlock() - self.id_map_stale = False - - - def set_cache(self, ids): - self.cache_lock.lockForWrite() - already_loaded = set([]) - for id in self.cache.keys(): - if id in ids: - already_loaded.add(id) - else: - self.cache.pop(id) - self.cache_lock.unlock() - ids = [i for i in ids if i not in already_loaded] - self.load_queue_lock.lockForWrite() - self.load_queue = collections.deque(ids) - self.load_queue_lock.unlock() - - - def run(self): - while self.keep_running: - if self.id_map is None or self.id_map_stale: - self.build_id_map() - while True: # Load images from the load queue - self.load_queue_lock.lockForWrite() - try: - id = self.load_queue.popleft() - except IndexError: - break - finally: - self.load_queue_lock.unlock() - - self.cache_lock.lockForRead() - need = True - if id in self.cache.keys(): - need = False - self.cache_lock.unlock() - if not need: - continue - path = None - self.id_map_lock.lockForRead() - if id in self.id_map.keys(): - path = self.id_map[id] - else: - self.id_map_stale = True - self.id_map_lock.unlock() - if path and os.access(path, os.R_OK): - try: - img = QImage() - data = open(path, 'rb').read() - img.loadFromData(data) - if img.isNull(): - continue - scaled, nwidth, nheight = fit_image(img.width(), - img.height(), 600, 800) - if scaled: - img = img.scaled(nwidth, nheight, Qt.KeepAspectRatio, - Qt.SmoothTransformation) - except: - continue - self.cache_lock.lockForWrite() - self.cache[id] = img - self.cache_lock.unlock() - - self.sleep(1) + self.cache = {} + self.lock = RLock() + self.null_image = QImage() def stop(self): self.keep_running = False - def cover(self, id): - val = None - if self.cache_lock.tryLockForRead(50): - val = self.cache.get(id, None) - self.cache_lock.unlock() - return val + def _image_for_id(self, id_): + img = self.db.cover(id_, index_is_id=True, as_image=True) + if img is None: + img = QImage() + if not img.isNull(): + scaled, nwidth, nheight = fit_image(img.width(), + img.height(), 600, 800) + if scaled: + img = img.scaled(nwidth, nheight, Qt.KeepAspectRatio, + Qt.SmoothTransformation) + + return img + + def run(self): + while self.keep_running: + try: + id_ = self.load_queue.get(True, 1) + except Empty: + continue + try: + img = self._image_for_id(id_) + except: + import traceback + traceback.print_exc() + continue + with self.lock: + self.cache[id_] = img + + def set_cache(self, ids): + with self.lock: + already_loaded = set([]) + for id in self.cache.keys(): + if id in ids: + already_loaded.add(id) + else: + self.cache.pop(id) + for id_ in set(ids) - already_loaded: + self.load_queue.put(id_) + + def cover(self, id_): + with self.lock: + return self.cache.get(id_, self.null_image) def clear_cache(self): - self.cache_lock.lockForWrite() - self.cache = {} - self.cache_lock.unlock() + with self.lock: + self.cache = {} def refresh(self, ids): - self.cache_lock.lockForWrite() - for id in ids: - self.cache.pop(id, None) - self.cache_lock.unlock() - self.load_queue_lock.lockForWrite() - for id in ids: - self.load_queue.appendleft(id) - self.load_queue_lock.unlock() + with self.lock: + for id_ in ids: + self.cache.pop(id_, None) + self.load_queue.put(id_) ### Global utility function for get_match here and in gui2/library.py CONTAINS_MATCH = 0 @@ -254,13 +209,13 @@ class ResultCache(SearchQueryParser): if query == 'false': for item in self._data: if item is None: continue - if item[loc] is None or item[loc] == UNDEFINED_DATE: + if item[loc] is None or item[loc] <= UNDEFINED_DATE: matches.add(item[0]) return matches if query == 'true': for item in self._data: if item is None: continue - if item[loc] is not None and item[loc] != UNDEFINED_DATE: + if item[loc] is not None and item[loc] > UNDEFINED_DATE: matches.add(item[0]) return matches @@ -341,8 +296,15 @@ class ResultCache(SearchQueryParser): cast = lambda x : float (x) adjust = lambda x: x + if len(query) > 1: + mult = query[-1:].lower() + mult = {'k':1024.,'m': 1024.**2, 'g': 1024.**3}.get(mult, 1.0) + if mult != 1.0: + query = query[:-1] + else: + mult = 1.0 try: - q = cast(query) + q = cast(query) * mult except: return matches @@ -401,7 +363,8 @@ class ResultCache(SearchQueryParser): for x in self.field_metadata: if len(self.field_metadata[x]['search_terms']): db_col[x] = self.field_metadata[x]['rec_index'] - if self.field_metadata[x]['datatype'] not in ['text', 'comments']: + if self.field_metadata[x]['datatype'] not in \ + ['text', 'comments', 'series']: exclude_fields.append(db_col[x]) col_datatype[db_col[x]] = self.field_metadata[x]['datatype'] is_multiple_cols[db_col[x]] = self.field_metadata[x]['is_multiple'] @@ -580,16 +543,18 @@ class ResultCache(SearchQueryParser): self.sort(field, ascending) self._map_filtered = list(self._map) - def seriescmp(self, x, y): - sidx = self.FIELD_MAP['series'] + def seriescmp(self, sidx, siidx, x, y, library_order=None): try: - ans = cmp(title_sort(self._data[x][sidx].lower()), - title_sort(self._data[y][sidx].lower())) + if library_order: + ans = cmp(title_sort(self._data[x][sidx].lower()), + title_sort(self._data[y][sidx].lower())) + else: + ans = cmp(self._data[x][sidx].lower(), + self._data[y][sidx].lower()) except AttributeError: # Some entries may be None ans = cmp(self._data[x][sidx], self._data[y][sidx]) if ans != 0: return ans - sidx = self.FIELD_MAP['series_index'] - return cmp(self._data[x][sidx], self._data[y][sidx]) + return cmp(self._data[x][siidx], self._data[y][siidx]) def cmp(self, loc, x, y, asstr=True, subsort=False): try: @@ -617,18 +582,27 @@ class ResultCache(SearchQueryParser): elif field == 'title': field = 'sort' elif field == 'authors': field = 'author_sort' as_string = field not in ('size', 'rating', 'timestamp') - if self.field_metadata[field]['is_custom']: - as_string = self.field_metadata[field]['datatype'] in ('comments', 'text') - field = self.field_metadata[field]['colnum'] if self.first_sort: subsort = True self.first_sort = False - fcmp = self.seriescmp \ - if field == 'series' and \ - tweaks['title_series_sorting'] == 'library_order' \ - else \ - functools.partial(self.cmp, self.FIELD_MAP[field], + if self.field_metadata[field]['is_custom']: + if self.field_metadata[field]['datatype'] == 'series': + fcmp = functools.partial(self.seriescmp, + self.field_metadata[field]['rec_index'], + self.field_metadata.cc_series_index_column_for(field), + library_order=tweaks['title_series_sorting'] == 'library_order') + else: + as_string = self.field_metadata[field]['datatype'] in ('comments', 'text') + field = self.field_metadata[field]['colnum'] + fcmp = functools.partial(self.cmp, self.FIELD_MAP[field], + subsort=subsort, asstr=as_string) + elif field == 'series': + fcmp = functools.partial(self.seriescmp, self.FIELD_MAP['series'], + self.FIELD_MAP['series_index'], + library_order=tweaks['title_series_sorting'] == 'library_order') + else: + fcmp = functools.partial(self.cmp, self.FIELD_MAP[field], subsort=subsort, asstr=as_string) self._map.sort(cmp=fcmp, reverse=not ascending) self._map_filtered = [id for id in self._map if id in self._map_filtered] diff --git a/src/calibre/library/cli.py b/src/calibre/library/cli.py index 3f71c98238..058b879b55 100644 --- a/src/calibre/library/cli.py +++ b/src/calibre/library/cli.py @@ -7,11 +7,11 @@ __docformat__ = 'restructuredtext en' Command line interface to the calibre database. ''' -import sys, os, cStringIO +import sys, os, cStringIO, re from textwrap import TextWrapper from calibre import terminal_controller, preferred_encoding, prints -from calibre.utils.config import OptionParser, prefs +from calibre.utils.config import OptionParser, prefs, tweaks from calibre.ebooks.metadata.meta import get_metadata from calibre.library.database2 import LibraryDatabase2 from calibre.ebooks.metadata.opf2 import OPFCreator, OPF @@ -680,9 +680,31 @@ def command_catalog(args, dbpath): # end of GR additions +def parse_series_string(db, label, value): + val = unicode(value).strip() + s_index = None + pat = re.compile(r'\[([.0-9]+)\]') + match = pat.search(val) + if match is not None: + val = pat.sub('', val).strip() + s_index = float(match.group(1)) + elif val: + if tweaks['series_index_auto_increment'] == 'next': + s_index = db.get_next_cc_series_num_for(val, label=label) + else: + s_index = 1.0 + return val, s_index + def do_set_custom(db, col, id_, val, append): - db.set_custom(id_, val, label=col, append=append) - prints('Data set to: %r'%db.get_custom(id_, label=col, index_is_id=True)) + if db.custom_column_label_map[col]['datatype'] == 'series': + val, s_index = parse_series_string(db, col, val) + db.set_custom(id_, val, extra=s_index, label=col, append=append) + prints('Data set to: %r[%4.2f]'% + (db.get_custom(id_, label=col, index_is_id=True), + db.get_custom_extra(id_, label=col, index_is_id=True))) + else: + db.set_custom(id_, val, label=col, append=append) + prints('Data set to: %r'%db.get_custom(id_, label=col, index_is_id=True)) def set_custom_option_parser(): parser = get_parser(_( diff --git a/src/calibre/library/comments.py b/src/calibre/library/comments.py index 1898e78cbf..d4ed1908f5 100644 --- a/src/calibre/library/comments.py +++ b/src/calibre/library/comments.py @@ -8,9 +8,14 @@ __docformat__ = 'restructuredtext en' import re from calibre.constants import preferred_encoding -from calibre.ebooks.BeautifulSoup import BeautifulSoup, Tag, NavigableString +from calibre.ebooks.BeautifulSoup import BeautifulSoup, Tag, NavigableString, \ + CData, Comment, Declaration, ProcessingInstruction from calibre import prepare_string_for_xml +# Hackish - ignoring sentences ending or beginning in numbers to avoid +# confusion with decimal points. +lost_cr_pat = re.compile('([a-z])([\.\?!])([A-Z])') + def comments_to_html(comments): ''' Convert random comment text to normalized, xml-legal block of

s @@ -39,33 +44,27 @@ def comments_to_html(comments): if not isinstance(comments, unicode): comments = comments.decode(preferred_encoding, 'replace') - # Hackish - ignoring sentences ending or beginning in numbers to avoid - # confusion with decimal points. + if '<' not in comments: + comments = prepare_string_for_xml(comments) + parts = [u'

%s

'%x.replace(u'\n', u'
') + for x in comments.split('\n\n')] + return '\n'.join(parts) # Explode lost CRs to \n\n - for lost_cr in re.finditer('([a-z])([\.\?!])([A-Z])', comments): + for lost_cr in lost_cr_pat.finditer(comments): comments = comments.replace(lost_cr.group(), '%s%s\n\n%s' % (lost_cr.group(1), lost_cr.group(2), lost_cr.group(3))) + comments = comments.replace(u'\r', u'') # Convert \n\n to

s - if re.search('\n\n', comments): - soup = BeautifulSoup() - split_ps = comments.split(u'\n\n') - tsc = 0 - for p in split_ps: - pTag = Tag(soup,'p') - pTag.insert(0,p) - soup.insert(tsc,pTag) - tsc += 1 - comments = soup.renderContents(None) - + comments = comments.replace(u'\n\n', u'

') # Convert solo returns to
- comments = re.sub('[\r\n]','
', comments) - + comments = comments.replace(u'\n', '
') # Convert two hyphens to emdash - comments = re.sub('--', '—', comments) + comments = comments.replace('--', '—') + soup = BeautifulSoup(comments) result = BeautifulSoup() rtc = 0 @@ -80,35 +79,52 @@ def comments_to_html(comments): ptc = 0 pTag.insert(ptc,prepare_string_for_xml(token)) ptc += 1 - - elif token.name in ['br','b','i','em']: + elif type(token) in (CData, Comment, Declaration, + ProcessingInstruction): + continue + elif token.name in ['br', 'b', 'i', 'em', 'strong', 'span', 'font', 'a', + 'hr']: if not open_pTag: pTag = Tag(result,'p') open_pTag = True ptc = 0 pTag.insert(ptc, token) ptc += 1 - else: if open_pTag: result.insert(rtc, pTag) rtc += 1 open_pTag = False ptc = 0 - # Clean up NavigableStrings for xml - sub_tokens = list(token.contents) - for sub_token in sub_tokens: - if type(sub_token) is NavigableString: - sub_token.replaceWith(prepare_string_for_xml(sub_token)) result.insert(rtc, token) rtc += 1 if open_pTag: result.insert(rtc, pTag) - paras = result.findAll('p') - for p in paras: + for p in result.findAll('p'): p['class'] = 'description' + for t in result.findAll(text=True): + t.replaceWith(prepare_string_for_xml(unicode(t))) + return result.renderContents(encoding=None) +def test(): + for pat, val in [ + ('lineone\n\nlinetwo', + '

lineone

\n

linetwo

'), + ('a b&c\nf', '

a b&c;
f

'), + ('a b\n\ncd', '

a b

cd

'), + ]: + print + print 'Testing: %r'%pat + cval = comments_to_html(pat) + print 'Value: %r'%cval + if comments_to_html(pat) != val: + print 'FAILED' + break + +if __name__ == '__main__': + test() + diff --git a/src/calibre/library/custom_columns.py b/src/calibre/library/custom_columns.py index cc690c54db..e039f5a817 100644 --- a/src/calibre/library/custom_columns.py +++ b/src/calibre/library/custom_columns.py @@ -8,6 +8,7 @@ __docformat__ = 'restructuredtext en' import json from functools import partial +from math import floor from calibre import prints from calibre.constants import preferred_encoding @@ -16,7 +17,7 @@ from calibre.utils.date import parse_date class CustomColumns(object): CUSTOM_DATA_TYPES = frozenset(['rating', 'text', 'comments', 'datetime', - 'int', 'float', 'bool']) + 'int', 'float', 'bool', 'series']) def custom_table_names(self, num): return 'custom_column_%d'%num, 'books_custom_column_%d_link'%num @@ -137,7 +138,8 @@ class CustomColumns(object): 'bool': adapt_bool, 'comments': lambda x,d: adapt_text(x, {'is_multiple':False}), 'datetime' : adapt_datetime, - 'text':adapt_text + 'text':adapt_text, + 'series':adapt_text } # Create Tag Browser categories for custom columns @@ -171,6 +173,19 @@ class CustomColumns(object): ans.sort(cmp=lambda x,y:cmp(x.lower(), y.lower())) return ans + def get_custom_extra(self, idx, label=None, num=None, index_is_id=False): + if label is not None: + data = self.custom_column_label_map[label] + if num is not None: + data = self.custom_column_num_map[num] + # add future datatypes with an extra column here + if data['datatype'] not in ['series']: + return None + ign,lt = self.custom_table_names(data['num']) + idx = idx if index_is_id else self.id(idx) + return self.conn.get('''SELECT extra FROM %s + WHERE book=?'''%lt, (idx,), all=False) + # convenience methods for tag editing def get_custom_items_with_ids(self, label=None, num=None): if label is not None: @@ -220,6 +235,28 @@ class CustomColumns(object): self.conn.commit() # end convenience methods + def get_next_cc_series_num_for(self, series, label=None, num=None): + if label is not None: + data = self.custom_column_label_map[label] + if num is not None: + data = self.custom_column_num_map[num] + if data['datatype'] != 'series': + return None + table, lt = self.custom_table_names(data['num']) + # get the id of the row containing the series string + series_id = self.conn.get('SELECT id from %s WHERE value=?'%table, + (series,), all=False) + if series_id is None: + return 1.0 + # get the label of the associated series number table + series_num = self.conn.get(''' + SELECT MAX({lt}.extra) FROM {lt} + WHERE {lt}.book IN (SELECT book FROM {lt} where value=?) + '''.format(lt=lt), (series_id,), all=False) + if series_num is None: + return 1.0 + return floor(series_num+1) + def all_custom(self, label=None, num=None): if label is not None: data = self.custom_column_label_map[label] @@ -271,9 +308,8 @@ class CustomColumns(object): self.conn.commit() return changed - - - def set_custom(self, id_, val, label=None, num=None, append=False, notify=True): + def set_custom(self, id_, val, label=None, num=None, + append=False, notify=True, extra=None): if label is not None: data = self.custom_column_label_map[label] if num is not None: @@ -317,10 +353,17 @@ class CustomColumns(object): 'INSERT INTO %s(value) VALUES(?)'%table, (x,)).lastrowid if not self.conn.get( 'SELECT book FROM %s WHERE book=? AND value=?'%lt, - (id_, xid), all=False): - self.conn.execute( - 'INSERT INTO %s(book, value) VALUES (?,?)'%lt, - (id_, xid)) + (id_, xid), all=False): + if data['datatype'] == 'series': + self.conn.execute( + '''INSERT INTO %s(book, value, extra) + VALUES (?,?,?)'''%lt, (id_, xid, extra)) + self.data.set(id_, self.FIELD_MAP[data['num']]+1, + extra, row_is_id=True) + else: + self.conn.execute( + '''INSERT INTO %s(book, value) + VALUES (?,?)'''%lt, (id_, xid)) self.conn.commit() nval = self.conn.get( 'SELECT custom_%s FROM meta2 WHERE id=?'%data['num'], @@ -370,6 +413,9 @@ class CustomColumns(object): {table} ON(link.value={table}.id) WHERE link.book=books.id) custom_{num} '''.format(query=query%table, lt=lt, table=table, num=data['num']) + if data['datatype'] == 'series': + line += ''',(SELECT extra FROM {lt} WHERE {lt}.book=books.id) + custom_index_{num}'''.format(lt=lt, num=data['num']) else: line = ''' (SELECT value FROM {table} WHERE book=books.id) custom_{num} @@ -393,7 +439,7 @@ class CustomColumns(object): if datatype in ('rating', 'int'): dt = 'INT' - elif datatype in ('text', 'comments'): + elif datatype in ('text', 'comments', 'series'): dt = 'TEXT' elif datatype in ('float',): dt = 'REAL' @@ -404,6 +450,10 @@ class CustomColumns(object): collate = 'COLLATE NOCASE' if dt == 'TEXT' else '' table, lt = self.custom_table_names(num) if normalized: + if datatype == 'series': + s_index = 'extra REAL,' + else: + s_index = '' lines = [ '''\ CREATE TABLE %s( @@ -419,8 +469,9 @@ class CustomColumns(object): id INTEGER PRIMARY KEY AUTOINCREMENT, book INTEGER NOT NULL, value INTEGER NOT NULL, + %s UNIQUE(book, value) - );'''%lt, + );'''%(lt, s_index), 'CREATE INDEX %s_aidx ON %s (value);'%(lt,lt), 'CREATE INDEX %s_bidx ON %s (book);'%(lt,lt), @@ -468,7 +519,7 @@ class CustomColumns(object): ratings as r WHERE {lt}.value={table}.id and bl.book={lt}.book and r.id = bl.rating and r.rating <> 0) avg_rating, - value AS sort + value AS sort FROM {table}; CREATE VIEW tag_browser_filtered_{table} AS SELECT @@ -483,7 +534,7 @@ class CustomColumns(object): WHERE {lt}.value={table}.id AND bl.book={lt}.book AND r.id = bl.rating AND r.rating <> 0 AND books_list_filter(bl.book)) avg_rating, - value AS sort + value AS sort FROM {table}; '''.format(lt=lt, table=table), diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py index fe4aac12b5..1534d3ffbf 100644 --- a/src/calibre/library/database2.py +++ b/src/calibre/library/database2.py @@ -6,7 +6,7 @@ __docformat__ = 'restructuredtext en' ''' The database used to store ebook metadata ''' -import os, sys, shutil, cStringIO, glob,functools, traceback +import os, sys, shutil, cStringIO, glob, time, functools, traceback from itertools import repeat from math import floor @@ -126,7 +126,7 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): self.dbpath = os.path.join(library_path, 'metadata.db') self.dbpath = os.environ.get('CALIBRE_OVERRIDE_DATABASE_PATH', self.dbpath) - if isinstance(self.dbpath, unicode): + if isinstance(self.dbpath, unicode) and not iswindows: self.dbpath = self.dbpath.encode(filesystem_encoding) self.connect() @@ -237,6 +237,11 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): self.custom_column_num_map[col]['label'], base, prefer_custom=True) + if self.custom_column_num_map[col]['datatype'] == 'series': + # account for the series index column. Field_metadata knows that + # the series index is one larger than the series. If you change + # it here, be sure to change it there as well. + self.FIELD_MAP[str(col)+'_s_index'] = base = base+1 self.FIELD_MAP['cover'] = base+1 self.field_metadata.set_field_record_index('cover', base+1, prefer_custom=False) @@ -435,12 +440,20 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): if os.access(path, os.R_OK): if as_path: return path - f = open(path, 'rb') + try: + f = open(path, 'rb') + except (IOError, OSError): + time.sleep(0.2) + f = open(path, 'rb') if as_image: img = QImage() img.loadFromData(f.read()) + f.close() return img - return f if as_file else f.read() + ans = f if as_file else f.read() + if ans is not f: + f.close() + return ans def get_metadata(self, idx, index_is_id=False, get_cover=False): ''' @@ -487,12 +500,18 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): path = os.path.join(self.library_path, self.path(id, index_is_id=True), 'cover.jpg') return os.access(path, os.R_OK) - def remove_cover(self, id): + def remove_cover(self, id, notify=True): path = os.path.join(self.library_path, self.path(id, index_is_id=True), 'cover.jpg') if os.path.exists(path): - os.remove(path) + try: + os.remove(path) + except (IOError, OSError): + time.sleep(0.2) + os.remove(path) + if notify: + self.notify('cover', [id]) - def set_cover(self, id, data): + def set_cover(self, id, data, notify=True): ''' Set the cover for this book. @@ -504,7 +523,13 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): else: if callable(getattr(data, 'read', None)): data = data.read() - save_cover_data_to(data, path) + try: + save_cover_data_to(data, path) + except (IOError, OSError): + time.sleep(0.2) + save_cover_data_to(data, path) + if notify: + self.notify('cover', [id]) def book_on_device(self, id): if callable(self.book_on_device_func): @@ -763,7 +788,7 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): if datatype == 'rating': # eliminate the zero ratings line as well as count == 0 item_not_zero_func = (lambda x: x[1] > 0 and x[2] > 0) - formatter = (lambda x:u'\u2605'*int(round(x/2.))) + formatter = (lambda x:u'\u2605'*int(x/2)) elif category == 'authors': item_not_zero_func = (lambda x: x[2] > 0) # Clean up the authors strings to human-readable form @@ -777,6 +802,15 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): icon=icon, tooltip=tooltip) for r in data if item_not_zero_func(r)] + # Needed for legacy databases that have multiple ratings that + # map to n stars + for r in categories['rating']: + for x in categories['rating']: + if r.name == x.name and r.id != x.id: + r.count = r.count + x.count + categories['rating'].remove(x) + break + # We delayed computing the standard formats category because it does not # use a view, but is computed dynamically categories['formats'] = [] diff --git a/src/calibre/library/field_metadata.py b/src/calibre/library/field_metadata.py index 8cb5c9bdad..626683fee5 100644 --- a/src/calibre/library/field_metadata.py +++ b/src/calibre/library/field_metadata.py @@ -81,7 +81,7 @@ class FieldMetadata(dict): 'column':'name', 'link_column':'series', 'category_sort':'(title_sort(name))', - 'datatype':'text', + 'datatype':'series', 'is_multiple':None, 'kind':'field', 'name':_('Series'), @@ -253,7 +253,7 @@ class FieldMetadata(dict): 'is_multiple':None, 'kind':'field', 'name':None, - 'search_terms':[], + 'search_terms':['size'], 'is_custom':False, 'is_category':False}), ('timestamp', {'table':None, @@ -398,6 +398,8 @@ class FieldMetadata(dict): if val['is_category'] and val['kind'] in ('user', 'search'): del self._tb_cats[key] + def cc_series_index_column_for(self, key): + return self._tb_cats[key]['rec_index'] + 1 def add_user_category(self, label, name): if label in self._tb_cats: diff --git a/src/calibre/linux.py b/src/calibre/linux.py index 51711b5b0f..33e7c004f0 100644 --- a/src/calibre/linux.py +++ b/src/calibre/linux.py @@ -29,6 +29,7 @@ entry_points = { 'calibre-complete = calibre.utils.complete:main', 'pdfmanipulate = calibre.ebooks.pdf.manipulate.cli:main', 'fetch-ebook-metadata = calibre.ebooks.metadata.fetch:main', + 'epub-fix = calibre.ebooks.epub.fix.main:main', 'calibre-smtp = calibre.utils.smtp:main', ], 'gui_scripts' : [ @@ -180,6 +181,7 @@ class PostInstall: 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 + from calibre.ebooks.epub.fix.main import option_parser as fix_op any_formats = ['epub', 'htm', 'html', 'xhtml', 'xhtm', 'rar', 'zip', 'txt', 'lit', 'rtf', 'pdf', 'prc', 'mobi', 'fb2', 'odt', 'lrf'] bc = os.path.join(os.path.dirname(self.opts.staging_sharedir), @@ -201,6 +203,7 @@ class PostInstall: f.write(opts_and_exts('ebook-viewer', viewer_op, any_formats)) f.write(opts_and_words('fetch-ebook-metadata', fem_op, [])) f.write(opts_and_words('calibre-smtp', smtp_op, [])) + f.write(opts_and_exts('epub-fix', fix_op, ['epub'])) f.write(textwrap.dedent(''' _ebook_device_ls() { @@ -539,17 +542,20 @@ MIME = '''\ ''' -def render_svg(image, dest): +def render_svg(image, dest, width=128, height=128): from PyQt4.QtGui import QPainter, QImage from PyQt4.QtSvg import QSvgRenderer - svg = QSvgRenderer(image.readAll()) + image = image.readAll() if hasattr(image, 'readAll') else image + svg = QSvgRenderer(image) painter = QPainter() - image = QImage(128,128,QImage.Format_ARGB32_Premultiplied) + image = QImage(width, height, QImage.Format_ARGB32) painter.begin(image) painter.setRenderHints(QPainter.Antialiasing|QPainter.TextAntialiasing|QPainter.SmoothPixmapTransform|QPainter.HighQualityAntialiasing) painter.setCompositionMode(QPainter.CompositionMode_SourceOver) svg.render(painter) painter.end() + if dest is None: + return image image.save(dest) def main(): diff --git a/src/calibre/manual/conf.py b/src/calibre/manual/conf.py index b00a454237..3866008f1f 100644 --- a/src/calibre/manual/conf.py +++ b/src/calibre/manual/conf.py @@ -100,9 +100,8 @@ html_use_smartypants = True html_title = 'calibre User Manual' html_short_title = 'Start' html_logo = 'resources/logo.png' -epub_titlepage = 'resources/titlepage.html' -epub_logo = 'resources/logo.png' epub_author = 'Kovid Goyal' +epub_cover = 'resources/epub_cover.jpg' # Custom sidebar templates, maps document names to template names. #html_sidebars = {} diff --git a/src/calibre/manual/conversion.rst b/src/calibre/manual/conversion.rst index cd8abd0493..7df11575de 100644 --- a/src/calibre/manual/conversion.rst +++ b/src/calibre/manual/conversion.rst @@ -504,7 +504,7 @@ Meaning, it is very difficult to determine where one paragraph ends and another paragraphs using a configurable, :guilabel:`Line Un-Wrapping Factor`. This is a scale used to determine the length at which a line should be unwrapped. Valid values are a decimal between 0 and 1. The default is 0.5, this is the median line length. Lower this value to include more -text in the unwrapping. Increase to include less. +text in the unwrapping. Increase to include less. You can adjust this value in the conversion settings under PDF Input. Also, they often have headers and footers as part of the document that will become included with the text. Use the options to remove headers and footers to mitigate this issue. If the headers and footers are not diff --git a/src/calibre/manual/custom.py b/src/calibre/manual/custom.py index 38486cc67a..917b927086 100644 --- a/src/calibre/manual/custom.py +++ b/src/calibre/manual/custom.py @@ -304,9 +304,8 @@ def auto_member(dirname, arguments, options, content, lineno, return list(node) def setup(app): - app.add_config_value('epub_titlepage', None, False) + app.add_config_value('epub_cover', None, False) app.add_config_value('epub_author', '', False) - app.add_config_value('epub_logo', None, False) app.add_builder(CustomBuilder) app.add_builder(CustomQtBuild) app.add_builder(EPUBHelpBuilder) diff --git a/src/calibre/manual/epub.py b/src/calibre/manual/epub.py index 4635e334c0..d54eb99a8d 100644 --- a/src/calibre/manual/epub.py +++ b/src/calibre/manual/epub.py @@ -50,6 +50,7 @@ OPF = '''\ {uid} {date} +
{manifest} @@ -71,6 +72,29 @@ CONTAINER='''\ ''' + +SVG_TEMPLATE = '''\ + + + + + Cover + + + + + + + + +''' + class TOC(list): def __init__(self, title=None, href=None): @@ -151,8 +175,6 @@ class EPUBHelpBuilder(StandaloneHTMLBuilder): spine = [' '*8+''%quoteattr(x) for x in self.spine] spine = '\n'.join(spine) guide = '' - if self.conf.epub_titlepage: - guide = ' '*8 + '' opf = OPF.format(title=escape(self.conf.html_title), author=escape(self.conf.epub_author), uid=str(uuid.uuid4()), @@ -162,18 +184,15 @@ class EPUBHelpBuilder(StandaloneHTMLBuilder): self.manifest['content.opf'] = ('application/oebps-package+xml', 'opf') def create_titlepage(self): - if self.conf.epub_titlepage: - img = '' - if self.conf.epub_logo: - img = '_static/epub_logo'+os.path.splitext(self.conf.epub_logo)[1] - shutil.copyfile(self.conf.epub_logo, - os.path.join(self.html_outdir, *img.split('/'))) - raw = open(self.conf.epub_titlepage, 'rb').read() - raw = raw%dict(title=self.conf.html_title, - version=self.conf.version, - img=img.split('/')[-1], - author=self.conf.epub_author) - open(os.path.join(self.html_outdir, '_static', 'titlepage.html'), 'wb').write(raw) + self.cover_image_url = None + if self.conf.epub_cover: + img = '_static/'+os.path.basename(self.conf.epub_cover) + shutil.copyfile(self.conf.epub_cover, os.path.join(self.html_outdir, + *img.split('/'))) + self.cover_image_url = img + tp = SVG_TEMPLATE%img.split('/')[-1] + open(os.path.join(self.html_outdir, '_static', 'titlepage.html'), + 'wb').write(tp) def generate_manifest(self): self.manifest = {} @@ -190,8 +209,12 @@ class EPUBHelpBuilder(StandaloneHTMLBuilder): self.manifest[url] = 'application/octet-stream' if self.manifest[url] == 'text/html': self.manifest[url] = 'application/xhtml+xml' - self.manifest[url] = (self.manifest[url], 'id'+str(id)) - id += 1 + if self.cover_image_url and url.endswith(self.cover_image_url): + id_ = 'cover' + else: + id_ = 'id'+str(id) + id += 1 + self.manifest[url] = (self.manifest[url], id_) def isdocnode(self, node): if not isinstance(node, nodes.list_item): @@ -227,7 +250,7 @@ class EPUBHelpBuilder(StandaloneHTMLBuilder): open('toc.ncx', 'wb').write(ncx) self.manifest['toc.ncx'] = ('application/x-dtbncx+xml', 'ncx') self.spine.insert(0, self.manifest[self.conf.master_doc+'.html'][1]) - if self.conf.epub_titlepage: + if self.conf.epub_cover: self.spine.insert(0, self.manifest['_static/titlepage.html'][1]) def add_to_spine(self, href): diff --git a/src/calibre/manual/faq.rst b/src/calibre/manual/faq.rst index 663c918c6e..2b7dbbda35 100644 --- a/src/calibre/manual/faq.rst +++ b/src/calibre/manual/faq.rst @@ -7,7 +7,7 @@ Frequently Asked Questions .. contents:: Contents :depth: 1 - :local: + :local: E-book Format Conversion ------------------------- @@ -30,7 +30,7 @@ It can convert every input format in the following list, to every output format. What are the best source formats to convert? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In order of decreasing preference: LIT, MOBI, EPUB, HTML, PRC, RTF, PDB, TXT, PDF +In order of decreasing preference: LIT, MOBI, EPUB, HTML, PRC, RTF, PDB, TXT, PDF Why does the PDF conversion lose some images/tables? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -40,7 +40,7 @@ are also represented as vector diagrams, thus they cannot be extracted. How do I convert a collection of HTML files in a specific order? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In order to convert a collection of HTML files in a specific oder, you have to create a table of contents file. That is, another HTML file that contains links to all the other files in the desired order. Such a file looks like:: - +

Table of Contents

@@ -60,16 +60,16 @@ Then just add this HTML file to the GUI and use the convert button to create you How do I convert my file containing non-English characters, or smart quotes? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -There are two aspects to this problem: +There are two aspects to this problem: 1. Knowing the encoding of the source file: |app| tries to guess what character encoding your source files use, but often, this is impossible, so you need to tell it what encoding to use. This can be done in the GUI via the :guilabel:`Input character encoding` field in the :guilabel:`Look & Feel` section. The command-line tools all have an :option:`--input-encoding` option. - 2. When adding HTML files to |app|, you may need to tell |app| what encoding the files are in. To do this go to Preferences->Plugins->File Type plugins and customize the HTML2Zip plugin, telling it what encoding your HTML files are in. Now when you add HTML files to |app| they will be correctly processed. HTML files from different sources often have different encodings, so you may have to change this setting repeatedly. A common encoding for many files from the web is ``cp1252`` and I would suggest you try that first. Note that when converting HTML files, leave the input encoding setting mentioned above blank. This is because the HTML2ZIP plugin automatically converts the HTML files to a standard encoding (utf-8). - 3. Embedding fonts: If you are generating an LRF file to read on your SONY Reader, you are limited by the fact that the Reader only supports a few non-English characters in the fonts it comes pre-loaded with. You can work around this problem by embedding a unicode-aware font that supports the character set your file uses into the LRF file. You should embed atleast a serif and a sans-serif font. Be aware that embedding fonts significantly slows down page-turn speed on the reader. + 2. When adding HTML files to |app|, you may need to tell |app| what encoding the files are in. To do this go to Preferences->Plugins->File Type plugins and customize the HTML2Zip plugin, telling it what encoding your HTML files are in. Now when you add HTML files to |app| they will be correctly processed. HTML files from different sources often have different encodings, so you may have to change this setting repeatedly. A common encoding for many files from the web is ``cp1252`` and I would suggest you try that first. Note that when converting HTML files, leave the input encoding setting mentioned above blank. This is because the HTML2ZIP plugin automatically converts the HTML files to a standard encoding (utf-8). + 3. Embedding fonts: If you are generating an LRF file to read on your SONY Reader, you are limited by the fact that the Reader only supports a few non-English characters in the fonts it comes pre-loaded with. You can work around this problem by embedding a unicode-aware font that supports the character set your file uses into the LRF file. You should embed atleast a serif and a sans-serif font. Be aware that embedding fonts significantly slows down page-turn speed on the reader. How do I use some of the advanced features of the conversion tools? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - You can get help on any individual feature of the converters by mousing over it in the GUI or running ``ebook-convert dummy.html .epub -h`` at a terminal. A good place to start is to look at the following demo files that demonstrate some of the advanced features: - * `html-demo.zip `_ + You can get help on any individual feature of the converters by mousing over it in the GUI or running ``ebook-convert dummy.html .epub -h`` at a terminal. A good place to start is to look at the following demo files that demonstrate some of the advanced features: + * `html-demo.zip `_ Device Integration @@ -95,12 +95,39 @@ We just need some information from you: device supports SD cards, insert them. Then connect your device. In calibre go to Preferences->Advanced and click the "Debug device detection" button. This will create some debug output. Copy it to a file and repeat the process, this time with your device disconnected. - * Send both the above outputs to us with the other information and we will write a device driver for your + * Send both the above outputs to us with the other information and we will write a device driver for your device. Once you send us the output for a particular operating system, support for the device in that operating system will appear in the next release of |app|. +How does |app| manage collections on my SONY reader? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When |app| connects with the device, it retrieves all collections for the books on the device. The collections +of which books are members are shown on the device view. + +When you send a book to the device, |app| will add the book to collections based on the metadata for that book. By +default, collections are created from tags and series. You can control what metadata is used by going to +Preferences->Plugins->Device Interface plugins and customizing the SONY device interface plugin. If you remove all +values, |app| will not add the book to any collection. + +Collection management is largely controlled by 'Preserve device collections' found at Preferences->Add/Save->Sending +to device. If checked (the default), managing collections is left to the user; |app| will not delete already +existing collections for a book on your device when you resend the book to the device, but |app| will add the book to +collections if necessary. To ensure that the collections for a book are based only on current |app| metadata, first +delete the books from the device, then resend the books. You can edit collections directly on the device view by +double-clicking or right-clicking in the collections column. + +If 'Preserve device collections' is not checked, then |app| will manage collections. Collections will be built using +|app| metadata exclusively. Sending a book to the device will correct the collections for that book so its +collections exactly match the book's metadata. Collections are added and deleted as necessary. Editing collections on +the device pane is not permitted, because collections not in the metadata will be removed automatically. + +In summary, check 'Preserve device collections' if you want to manage collections yourself. Collections for a book +will never be removed by |app|, but can be removed by you by editing on the device view. Uncheck 'Preserve device +collections' if you want |app| to manage the collections, adding books to and removing books from collections as +needed. Can I use both |app| and the SONY software to manage my reader? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -130,16 +157,19 @@ simplest is to simply re-name the executable file that launches the library prog Can I use the collections feature of the SONY reader? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |app| has full support for collections. When you add tags to a book's metadata, those tags are turned into collections when you upload the book to the SONY reader. Also, the series information is automatically -turned into a collection on the reader. Note that the PRS-500 does not support collections for books stored on the SD card. The PRS-505 does. +turned into a collection on the reader. Note that the PRS-500 does not support collections for books stored on the SD card. The PRS-505 does. How do I use |app| with my iPad/iPhone/iTouch? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Over the air +^^^^^^^^^^^^^^ + The easiest way to browse your |app| collection on your Apple device (iPad/iPhone/iPod) is by using the *free* Stanza app, available from the Apple app store. You need at least Stanza version 3.0. Stanza allows you to access your |app| collection wirelessly, over the air. First perform the following steps in |app| - * Set the Preferred Output Format in |app| to EPUB (The output format can be set under Preferences->General) + * Set the Preferred Output Format in |app| to EPUB (The output format can be set under Preferences->General) * Set the output profile to iPad (this will work for iPhone/iPods as well), under Preferences->Conversion->Page Setup * Convert the books you want to read on your iPhone to EPUB format by selecting them and clicking the Convert button. * Turn on the Content Server in |app|'s preferences and leave |app| running. @@ -154,13 +184,13 @@ Replace ``192.168.1.2`` with the local IP address of the computer running |app|. If you get timeout errors while browsing the calibre catalog in Stanza, try increasing the connection timeout value in the stanza settings. Go to Info->Settings and increase the value of Download Timeout. -Alternative for the iPad +With the USB cable ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -As of |app| version 0.7.0, you can plugin your iPad into the computer using its charging cable, and |app| will detect it and show you a list of books on the iPad. You can then use the Send to device button to send books directly to iBooks on the iPad. +As of |app| version 0.7.0, you can plug your iDevice into the computer using its charging cable, and |app| will detect it and show you a list of books on the device. You can then use the *Send to device button* to send books directly to iBooks on the device. Note that you must have at least iOS 4 installed on your iPhone/iTouch for this to work. -This method only works on Windows XP and higher and OS X 10.5 and higher. Linux is not supported (iTunes is not available in linux) and OS X 10.4 is not supported. For more details, see -`this forum post http://www.mobileread.com/forums/showpost.php?p=944079&postcount=1`_. +This method only works on Windows XP and higher and OS X 10.5 and higher. Linux is not supported (iTunes is not available in linux) and OS X 10.4 is not supported. +For more details on how this works, see `this forum post `_. How do I use |app| with my Android phone? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -171,7 +201,7 @@ Can I access my |app| books using the web browser in my Kindle or other reading ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |app| has a *Content Server* that exports the books in |app| as a web page. You can turn it on under -Preferences->Content Server. Then just point the web browser on your device to the computer running +Preferences->Content Server. Then just point the web browser on your device to the computer running the Content Server and you will be able to browse your book collection. For example, if the computer running the server has IP address 63.45.128.5, in the browser, you would type:: @@ -190,8 +220,8 @@ The most likely cause of this is your antivirus program. Try temporarily disabli Why is my device not detected in linux? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -|app| needs your linux kernel to have been setup correctly to detect devices. If your devices are not detected, perform the following tests:: - +|app| needs your linux kernel to have been setup correctly to detect devices. If your devices are not detected, perform the following tests:: + grep SYSFS_DEPRECATED /boot/config-`uname -r` You should see something like ``CONFIG_SYSFS_DEPRECATED_V2 is not set``. @@ -227,7 +257,7 @@ Now this makes it very easy to find for example all science fiction books by Isa ReadStatus -> Genre -> Author -> Series -In |app|, you would instead use tags to mark genre and read status and then just use a simple search query like ``tag:scifi and not tag:read``. |app| even has a nice graphical interface, so you don't need to learn its search language instead you can just click on tags to include or exclude them from the search. +In |app|, you would instead use tags to mark genre and read status and then just use a simple search query like ``tag:scifi and not tag:read``. |app| even has a nice graphical interface, so you don't need to learn its search language instead you can just click on tags to include or exclude them from the search. Why doesn't |app| have a column for foo? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -235,7 +265,7 @@ Why doesn't |app| have a column for foo? How do I move my |app| library from one computer to another? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Simply copy the |app| library folder from the old to the new computer. You can find out what the library folder is by clicking Preferences. The very first item is the path to the library folder. Now on the new computer, start |app| for the first time. It will run the Welcome Wizard asking you for the location of the |app| library. Point it to the previously copied folder. +Simply copy the |app| library folder from the old to the new computer. You can find out what the library folder is by clicking Preferences. The very first item is the path to the library folder. Now on the new computer, start |app| for the first time. It will run the Welcome Wizard asking you for the location of the |app| library. Point it to the previously copied folder. Note that if you are transferring between different types of computers (for example Windows to OS X) then after doing the above you should also go to Preferences->Advanced and click the Check database integrity button. It will warn you about missing files, if any, which you should then transfer by hand. @@ -246,11 +276,11 @@ Content From The Web :depth: 1 :local: -My downloaded news content causes the reader to reset. +My downloaded news content causes the reader to reset. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This is a bug in the SONY firmware. The problem can be mitigated by switching the output format to EPUB -in the configuration dialog. Alternatively, you can use the LRF output format and use the SONY software -to transfer the files to the reader. The SONY software pre-paginates the LRF file, +in the configuration dialog. Alternatively, you can use the LRF output format and use the SONY software +to transfer the files to the reader. The SONY software pre-paginates the LRF file, thereby reducing the number of resets. I obtained a recipe for a news site as a .py file from somewhere, how do I use it? @@ -285,7 +315,7 @@ Take your pick: Why does |app| show only some of my fonts on OS X? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -|app| embeds fonts in ebook files it creates. E-book files support embedding only TrueType (.ttf) fonts. Most fonts on OS X systems are in .dfont format, thus they cannot be embedded. |app| shows only TrueType fonts founf on your system. You can obtain many TrueType fonts on the web. Simply download the .ttf files and add them to the Library/Fonts directory in your home directory. +|app| embeds fonts in ebook files it creates. E-book files support embedding only TrueType (.ttf) fonts. Most fonts on OS X systems are in .dfont format, thus they cannot be embedded. |app| shows only TrueType fonts found on your system. You can obtain many TrueType fonts on the web. Simply download the .ttf files and add them to the Library/Fonts directory in your home directory. |app| is not starting on Windows? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -308,6 +338,10 @@ Post any output you see in a help message on the `Forum System->Universal Access and turn off the setting for enabling +access for assistive devices in all the tabs. + You can obtain debug output about why |app| is not starting by running `Console.app`. Debug output will be printed to it. If the debug output contains a line that looks like:: @@ -317,9 +351,9 @@ then the problem is probably a corrupted font cache. You can clear the cache by `instructions `_. If that doesn't solve it, look for a corrupted font file on your system, in ~/Library/Fonts or the like. - My antivirus program claims |app| is a virus/trojan? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Your antivirus program is wrong. |app| is a completely open source product. You can actually browse the source code yourself (or hire someone to do it for you) to verify that it is not a virus. Please report the false identification to whatever company you buy your antivirus software from. If the antivirus program is preventing you from downloading/installing |app|, disable it temporarily, install |app| and then re-enable it. How do I use purchased EPUB books with |app|? @@ -329,8 +363,8 @@ Most purchased EPUB books have `DRM `_. Thi I want some feature added to |app|. What can I do? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -You have two choices: - 1. Create a patch by hacking on |app| and send it to me for review and inclusion. See `Development `_. +You have two choices: + 1. Create a patch by hacking on |app| and send it to me for review and inclusion. See `Development `_. 2. `Open a ticket `_ (you have to register and login first) and hopefully I will find the time to implement your feature. Can I include |app| on a CD to be distributed with my product/magazine? diff --git a/src/calibre/manual/gui.rst b/src/calibre/manual/gui.rst index dd0451c087..613eb82559 100644 --- a/src/calibre/manual/gui.rst +++ b/src/calibre/manual/gui.rst @@ -199,31 +199,59 @@ Searches are by default 'contains'. An item matches if the search string appears Two other kinds of searches are available: equality search and search using regular expressions. Equality searches are indicated by prefixing the search string with an equals sign (=). For example, the query -``tag:"=science"`` will match "science", but not "science fiction". Regular expression searches are +``tag:"=science"`` will match "science", but not "science fiction" or "hard science". Regular expression searches are indicated by prefixing the search string with a tilde (~). Any python-compatible regular expression can be used. Regular expression searches are contains searches unless the expression contains anchors. Should you need to search for a string with a leading equals or tilde, prefix the string with a backslash. +Enclose search strings with quotes (") if the string contains parenthesis or spaces. For example, to search +for the tag ``Science Fiction``, you would need to search for ``tag:"=science fiction"``. If you search for +``tag:=science fiction``, you will find all books with the tag 'science' and containing the word 'fiction' in any +metadata. + You can build advanced search queries easily using the :guilabel:`Advanced Search Dialog`, accessed by clicking the button |sbi|. -Available fields for searching are: ``tag, title, author, publisher, series, rating cover, comments, format, -isbn, date, pubdate, search``. +Available fields for searching are: ``tag, title, author, publisher, series, rating, cover, comments, format, +isbn, date, pubdate, search, size`` and custom columns. If a device is plugged in, the ``ondevice`` field +becomes available. To find the search name for a custom column, hover your mouse over the column header. -The syntax for searching for dates and publication dates is:: +The syntax for searching for dates is:: pubdate:>2000-1 Will find all books published after Jan, 2000 - date:<=2000-1-3 Will find all books added to calibre beforre 3 Jan, 2000 + date:<=2000-1-3 Will find all books added to calibre before 3 Jan, 2000 pubdate:=2009 Will find all books published in 2009 +If the date is ambiguous, the current locale is used for date comparison. For example, in an mm/dd/yyyy +locale, 2/1/2009 is interpreted as 1 Feb 2009. In a dd/mm/yyyy locale, it is interpreted as 2 Jan 2009. + +Some special date strings are available. The string ``today`` translates to today's date, whatever it is. The +strings `yesterday`` and ``thismonth`` also work. In addition, the string ``daysago`` can be used to compare +to a date some number of days ago, for example: date:>10daysago, date:<=45daysago. + +You can search for books that have a format of a certain size like this:: + + size:>1.1M Will find books with a format larger than 1.1MB + size:<=1K Will find books with a format smaller than 1KB + +Dates and numeric fields support the operators ``=`` (equals), ``>`` (greater than), ``>=`` (greater than or +equal to), ``<`` (less than), ``<=`` (less than or equal to), and ``!=`` (not equal to). Rating fields are +considered to be numeric. For example, the search ``rating:>=3`` will find all books rated 3 or higher. + The special field ``search`` is used for saved searches. So if you save a search with the name -"My spouse's books" you can enter ``search:"My spouses' books"`` in the search bar to reuse the saved +"My spouse's books" you can enter ``search:"My spouse's books"`` in the search bar to reuse the saved search. More about saving searches, below. -You can search for the absence or presnce of a filed using the specia "true" and "false" values. For example:: +You can search for the absence or presence of a field using the special "true" and "false" values. For example:: - cover:false Will give you all books without a cover - series:true Will give you all books that belong to a series + cover:false will give you all books without a cover + series:true will give you all books that belong to a series + comments:false will give you all books with an empty comment + +Yes/no custom columns are searchable. Searching for ``false``, ``empty``, or ``blank`` will find all books +with undefined values in the column. Searching for ``true`` will find all books that do not have undefined +values in the column. Searching for ``yes`` or ``checked`` will find all books with ``Yes`` in the column. +Searching for ``no`` or ``unchecked`` will find all books with ``No`` in the column. .. |sbi| image:: images/search_button.png :align: middle diff --git a/src/calibre/manual/resources/epub_cover.jpg b/src/calibre/manual/resources/epub_cover.jpg new file mode 100644 index 0000000000..d5aa42e775 Binary files /dev/null and b/src/calibre/manual/resources/epub_cover.jpg differ diff --git a/src/calibre/manual/resources/titlepage.html b/src/calibre/manual/resources/titlepage.html deleted file mode 100644 index 08f7ddf1cc..0000000000 --- a/src/calibre/manual/resources/titlepage.html +++ /dev/null @@ -1,29 +0,0 @@ - - - %(title)s - - - -

%(title)s

-

%(version)s

-
- -
-

%(author)s

- - - diff --git a/src/calibre/translations/ar.po b/src/calibre/translations/ar.po index e47f1761b4..ce7590d6f5 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: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:27+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-03 06:13+0000\n" +"Last-Translator: Walid \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: 2010-06-19 03:47+0000\n" +"X-Launchpad-Export-Date: 2010-07-04 03:43+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -27,28 +27,29 @@ msgstr "لا يفعل شيءً" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -71,9 +72,9 @@ msgstr "لا يفعل شيءً" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -101,49 +102,49 @@ msgstr "لا يفعل شيءً" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -178,7 +179,7 @@ msgstr "" "إلتحاق بكل الوصلات المحلية في ملف HTML وإنشاء ملف ZIP ليحتوي كل الملفات " "الموصولة. هذا الملحق ينفّذ كل مرة تضيف ملف HTML إلى المكتبة." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -186,7 +187,7 @@ msgstr "" "رمزالحروف لاجل ملفات HTML المدخلة, تشتمل على الخيارات التالية : cp1252, " "latin1, iso-8859-1 وutf-8" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -196,49 +197,49 @@ msgstr "" "pmlname_img او صور. هذا المضاف يتم تشغيله كل مرة اضيف فيها ملف PML الى " "المكتبة" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "استخرج الغلاف من ملف الرسومات" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "يقرأ دليل المعلومات من الملفات %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "إقرأ دليل المعلومات لكتب في أرشيفات RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "إقرأ ميتاداتا لكتب في أرشيفات ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "ضبط دليل المعلومات في الملفات %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "ضبط دليل المعلومات من ملفات %s" @@ -282,7 +283,7 @@ msgstr "" "وثيقة الإدخال." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -294,70 +295,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "ملف التعريف هذا هو المقصود لجهاز سوني PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "ملف التعريف هذا هو المقصود لجهاز سوني PRS 900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "هذا الطور يستخدم مع Microsoft Reader" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "ملف التعريف هذا يستخدم مع كتب Mobipocket ." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "ملف التعريف هذا يستخدم مع Hanlin V3 وأمثاله." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "ملف التعريف هذا يستخدم مع Hanlin V5 وأمثاله." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "ملف التعريف هذا يستخدم مع Cybook G3" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "ملف التعريف هذا يستخدم مع Cybook Opus ." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "ملف التعريف هذا يستخدم مع Amazon Kindle ." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "ملف التعريف هذا يستخدم مع Irex Illiad ." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "ملف التعريف هذا يستخدم مع IRex Digital Reader 1000 ." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "ملف التعريف هذا يستخدم مع B&N Nook ." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "المخرجات" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -366,24 +367,24 @@ msgstr "" "ملف التعريف هذا يحاول تقديم افتراضات عاقلة و مفيدة إذا كنت ترغب في إصدار " "وثيقة للقراءة في جهاز الكمبيوتر أو على مجموعة من الأجهزة." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "ملف التعريف هذا يستخدم مع سوني PRS-300 ." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "ملف التعريف هذا يستخدم مع الخمسة بوصة JetBook ." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -391,7 +392,7 @@ msgstr "" "ملف التعريف هذا يستخدم مع سوني خط إنتاج PRS . الـ500/505/700 الخ ، في وضع " "أفقي.غالباً مفيد للكاريكاتيرات." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "ملف التعريف هذا يستخدم مع Amazon Kindle DX" @@ -465,76 +466,81 @@ msgstr "تعطيل الملحق المسمى" msgid "Communicate with Android phones." msgstr "التواصل مع هواتف أندرويد ." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "الأخبار" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "" @@ -557,7 +563,11 @@ msgstr "" msgid "Communicate with the EB600 eBook reader." msgstr "التواصل مع القارئ الكتاب الاليكترونى EB600 ." -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -663,10 +673,44 @@ msgstr "التواصل مع القارئ الكتاب الاليكترونى Kin msgid "Communicate with the Kindle DX eBook reader." msgstr "التواصل مع القارئ الكتاب الاليكترونى Kindle DX ." -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "يجري إحصاء قائمة كتب من الجهاز..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "يجري حذف الكتب من الجهاز..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "إضافة كتب لقائمة البيانات الوصفية للجهاز ..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "الإتصال مع جهاز البالم بري" @@ -675,6 +719,10 @@ msgstr "الإتصال مع جهاز البالم بري" msgid "Communicate with the Booq Avant" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "التواصل مع نوكيا 770" @@ -683,6 +731,10 @@ msgstr "التواصل مع نوكيا 770" msgid "Communicate with the Nokia 810 internet tablet." msgstr "التواصل مع نوكيا 810" +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "جهاز الـNook" @@ -711,7 +763,7 @@ msgstr "" "ضع علامة الفاصلة للفصل بين مجموعة من البيانات الوصفية لكي تكون مجموعة في " "الجهاز . و تشمل الاحتمالات التالية: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "" @@ -732,47 +784,47 @@ msgstr "" msgid "Communicate with the iPapyrus reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "لم يتمكن من كشف القرص %s. حاول إعادة التشغيل." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "غير قادر على الكشف عن %s نقطة التحميل. حاول إعادة التشغيل." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "%s غير قادر على اكتشاف عن الذاكرة" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "غير قادر على جلب المساعد : %s ." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "لا يوجد بطاقات تخزين في القارئ ." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "الفتحة المختارة : %s ليست مدعومة ." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "لا توجد مساحة كافية في الذاكرة الرئيسية" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "لا توجد مساحة كافية في بطاقة التخزين" @@ -780,24 +832,32 @@ msgstr "لا توجد مساحة كافية في بطاقة التخزين" msgid "Configure Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "" @@ -810,36 +870,12 @@ msgstr "الاتصال مع جهاز قارئ إلكتروني ." msgid "Get device information..." msgstr "يجري إحصاء معلومات الجهاز..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "يجري إحصاء قائمة كتب من الجهاز..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "يجري تحويل الكتب إلى الجهاز..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "إضافة كتب لقائمة للبيانات الوصفية للجهاز" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "يجري حذف الكتب من الجهاز..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "يجري إرسال دليل المعلومات. إلى الجهاز..." @@ -1495,7 +1531,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" @@ -1531,20 +1567,20 @@ msgstr "" msgid "Add Table of Contents to beginning of the book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " "Default is %default." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1552,7 +1588,7 @@ msgid "" "pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1689,7 +1725,7 @@ msgid "Path to output file" msgstr "المسار إلى ملف الخرج" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "" @@ -1778,88 +1814,86 @@ msgstr "ضم أسرة الخطوط أحادية القياس" msgid "Comic" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "العنوان" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "المؤلف أو المؤلفون" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "الناشر" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "المنتج" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "التعليقات" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "الوسوم" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "السلسلة" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "اللغة" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "ختم التوقيت" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "" @@ -1966,53 +2000,57 @@ msgstr "تم حفظ الغلاف في" msgid "No cover found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2026,50 +2064,51 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "المؤلف الذي تريد البحث عنه." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "العنوان الذي تريد البحث عنه." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "الناشر الذي تريد البحث عنه." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "LibraryThing.com لم يرد. حاول لاحقاً." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " لم يوجد." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "خطأ في خادم LibraryThing.com. حاول لاحقاً." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "الغلاف" @@ -2108,70 +2147,70 @@ msgstr "" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "صقحة العنوان" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "المحتويات" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "الفهرس" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "المسرد" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "شكر وتقدير" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "ببليوغرافيا" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "حقوق المؤلف" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "الإهداء" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "افتتاحية" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "قائمة الرسوم" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "قائمة الجداول" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "الملاحظات" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "افتتاحية" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "النصّ الرئيسي" @@ -2644,283 +2683,287 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
%s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "كتب" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "كتب EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "كتب LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "كتب HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "كتب LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "كتب MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "كتب نصّية" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "كتب PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "الرسومات" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "أرشيفات" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "خطأ" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "لا يمكن تحرير الميتاداتا" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

The second and subsequently selected " @@ -2928,7 +2971,7 @@ msgid "" "proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

After merger the second and " @@ -2938,99 +2981,99 @@ msgid "" "from your computer.

Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "إختيار دليل الوجهة" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "لا يمكن تحويله" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3038,11 +3081,11 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "" @@ -3050,60 +3093,60 @@ msgstr "" msgid "Searching in" msgstr "يتم البحث في" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "تم الحفظ" @@ -3191,23 +3234,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3250,55 +3293,56 @@ msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "المسار" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "التهيئات" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "بدون" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3347,7 +3391,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3357,7 +3401,7 @@ msgstr "" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3379,8 +3423,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" @@ -3815,96 +3859,96 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "إختار الغلاف لـ " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "لا يمكن القراءة" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "خطأ في قراءة الملف" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

There was an error reading from file:
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " ليست صورة صالحة" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "غلاف الكتاب" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -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:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "تغيير صورة الغلاف&:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "استخدم غلاف من المصدر&" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr ":ال&عنوان " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "تغيير عنوان هذا الكتاب" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "ال&مؤلف: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&الناشر: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "الو&سوم: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3912,23 +3956,23 @@ msgstr "" "الوسوم تصنّف الكتاب. هذا يفيد كثيراً في البحث.

ممكن تكون أي كلمة أو " "مجموعة كلمات، مفرقة بفاصلة." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&سلسلات:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "قائمة السلسلات المعروفة. بإمكانك إضافة سلسلات جديدة." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "الكتاب " @@ -4013,12 +4057,12 @@ msgid "PDB Input" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -4142,12 +4186,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "" @@ -4231,22 +4275,22 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -4368,6 +4412,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4396,263 +4441,280 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "احصل على معلومات الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "احصل على قائمة الكتب على الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "ارسل الميتاداتا إلى الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "رفع %d كتاب إلى الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "حذف كتب من الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "تنزيل الكتب من الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "عرض كتاب على الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "خطأ في الاتصال بالجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "الجهاز: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr " تم كشفه." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "متصل " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -4743,47 +4805,47 @@ msgstr "&طور:" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "عام" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "الواجهة" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "متقدّم" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -4791,191 +4853,191 @@ msgstr "" "محتوى\n" "خادم" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "الملحقات" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "مسار الملحق غير صالح" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s ليس مسار لملحق صالح" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "إختيار الملحق" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "لا يمكن تعطيل الملحق" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "الملحق: %s لا يمكن تعطيله" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "لا يمكن تخصيص الملحق" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "الملحق: %s لا يحتاج التخصيص" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "لم يمكن حذف الملحق المضمن" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr " لا يمكن حذفه. هذا ملحق مضمن في البرنامج. حاول تعطيله بدلاً من حذفه." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "هل أنت متأكّد؟" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "سجل الأخطاء:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "سجل النفاذ:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "فشل في تشغيل خادم المحتوى" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "حجم غير صالح" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
Must be a directory." msgstr "
يجب أن يكون دليل." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4983,35 +5045,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -5019,355 +5081,380 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "التفضيلات" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " ثانية" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "إختر ال&لغة (يحتاج إعادة تشغيل):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "عادي" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "مرتفع" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "منخفض" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "إرسال الأخبار& التي تم تنزيلها آلياً إلى قارئ الكتب الإلكترونية" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "شريط الأدوات" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "كبير" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "متوسط" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "صغير" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "&حجم الأزرار على شريط الأدوات" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "إظهار النص& على أزرار شريط الأدوات" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "استخدم المستعرض& الداخلي في:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 -msgid "Add an email address to which to send books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 -msgid "&Add email" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 -msgid "Make &default" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 -msgid "&Remove email" +msgid "Disable all animations. Useful if you have a slow/old computer." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +msgid "Add an email address to which to send books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +msgid "&Add email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +msgid "Make &default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +msgid "&Remove email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /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:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "&كلمة السرّ" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "إظهار& كلمة السرّ" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

Remember to leave calibre running as the server only runs as long as " @@ -5378,33 +5465,33 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "ت&خصيص الملحق" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&حذف الملحق" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "إضافة ملحق جديد" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "&ملف الملحق:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&إضافة" @@ -5441,10 +5528,10 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "تاريخ" @@ -5473,57 +5560,61 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5637,7 +5728,7 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "التهيئة" @@ -5653,39 +5744,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "ترتيب المؤلف" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "لم يوجد ميتاداتا" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5764,21 +5855,21 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 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:162 -#: /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:372 msgid "&Rating:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "" @@ -5787,7 +5878,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " نجمة" @@ -5797,8 +5888,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "فتح محرر الوسوم" @@ -5826,10 +5917,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -5842,207 +5929,207 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "تحرير معلومات الميتا" -#: /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:362 msgid "Meta information" msgstr "معلومات الميتا" -#: /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:365 msgid "Swap the author and title" msgstr "" -#: /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:368 msgid "Author S&ort: " 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "حذف سلسلات غير مستخدمة (سلسلات التي لا تحتوي على كتب)" -#: /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:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" msgstr "" -#: /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:390 msgid "dd MMM yyyy" msgstr "" -#: /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:391 msgid "&Date:" 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:392 msgid "&Comments" msgstr "" -#: /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:393 msgid "&Fetch metadata from server" 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:394 msgid "Available Formats" msgstr "التهيئات المتوفرة" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "حذف التهيئات المختارة لهذا الكتاب من قاعدة البيانات." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "" @@ -6390,7 +6477,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" @@ -6444,41 +6531,33 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "إضافة وسم إلى قائمة الوسوم المتوفرة وعلّم الكتاب الحالي به" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -6742,11 +6821,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "" @@ -6798,128 +6877,134 @@ msgstr "تحرير الميتاداتا جملةً" msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "إضافة كتب من دليل واحد" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "حفظ إلى القرص" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "حفظ إلى القرص في دليل واحد" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "عرض" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "عرض تهيئة معينة" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "" @@ -6990,42 +7075,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "كتاب %s لـ%s." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

" msgstr "" @@ -7069,11 +7154,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7174,99 +7259,99 @@ msgstr "" msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" @@ -7445,20 +7530,20 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "بحث" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "" @@ -7534,74 +7619,74 @@ msgstr "" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "" @@ -7668,72 +7753,72 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "خطأ في التحويل" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8216,91 +8301,91 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "" @@ -8564,48 +8649,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -8994,7 +9079,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -9006,17 +9091,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -9025,19 +9110,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -9047,15 +9132,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9071,39 +9156,39 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

Migrating old database to ebook library in %s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" @@ -9403,6 +9488,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -9564,93 +9653,93 @@ msgstr "" msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "تم التنزيل" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "فشل تنزيل المقالات التالية:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "فشل تنزيل أجزاء من المقالات التالية:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " من " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "محاولة تنزيل الغلاف..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "تم تنزيل التلقيم إلى %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "لم يتمكّن من تنزيل الغلاف: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "يتم تنزيل الغلاف من %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "مقالة بدون عنوان" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "المقالة منزّلة: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "فشل تنزيل المقالة: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9662,12 +9751,12 @@ msgstr "أنت" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "تم جدولته" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "مخصّص" diff --git a/src/calibre/translations/ca.po b/src/calibre/translations/ca.po index f0f08e4c2c..36c2679df4 100644 --- a/src/calibre/translations/ca.po +++ b/src/calibre/translations/ca.po @@ -10,14 +10,14 @@ msgid "" msgstr "" "Project-Id-Version: ca\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:06+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-05 07:09+0000\n" +"Last-Translator: Fike \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-19 03:47+0000\n" +"X-Launchpad-Export-Date: 2010-07-06 03:36+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -30,28 +30,29 @@ msgstr "No fa absolutament res" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -74,9 +75,9 @@ msgstr "No fa absolutament res" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -104,49 +105,49 @@ msgstr "No fa absolutament res" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -182,7 +183,7 @@ msgstr "" "contingui els fitxers enllaçats. Aquest connector s'executat cada vegada que " "s'afegeix un fitxer HTML a la biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -190,7 +191,7 @@ msgstr "" "El joc de caràcters dels fitxer HTML d'entrada. Les opcions comuns inclouen: " "cp1252, latin1, iso-8859-1 i utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -200,49 +201,49 @@ msgstr "" "directoris pmlname_ing o images. Aquest connector s'executa cada vegada que " "afegiu un fitxer PML a la biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Extreu la portada dels fitxers de còmic" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Llegeix les metadades dels fitxers %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Llegeix les metadades dels llibres electrònics en arxius RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Llegeix les metadades dels llibres electrònics en arxius ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Estableix metadades als fitxers %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Estableix metadades des dels fitxers %s" @@ -288,7 +289,7 @@ msgstr "" "sabeu res del document d'entrada." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -300,70 +301,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Aquest perfil és adient per al SONY PRS-300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Aquest perfil és adient per al SONY PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Aquest perfil és adient per al Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Aquest perfil és adient per a llibres Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Aquest perfil és adient per al Hanlin V3 i els seus clons." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Aquest perfil és adient per al Hanlin V5 i els seus clons." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Aquest perfil és adient per al Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Aquest perfil és adient per al Cybook Opus" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Aquest perfil és adient per a l'Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Aquest perfil és adient per a l'Irex Illiad" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Aquest perfil és adient per al IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Aquest perfil és adient per al IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Aquest perfil és adient per al B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Perfil de sortida" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -373,25 +374,25 @@ msgstr "" "si voleu generar un document que es pugui llegir en un PC o en un conjunt " "ampli de dispositius diferents." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" "Destinats als dispositius d'IPAD i similars amb una resolució de 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Aquest perfil és adient per al lector Kobo Reader." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Aquest perfil és adient per al SONY PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Aquest perfil és adient per al 5-inch JetBook" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -399,7 +400,7 @@ msgstr "" "Aquest perfil és adient per al la línia PRS de SONY. Els models 500/505/700, " "etc., en mode apaïsat. Sobretot és útil per als còmics." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Aquest perfil és adient per a l'Amazon Kindle DX." @@ -421,7 +422,7 @@ msgstr "Connectors inhabilitats" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 msgid "Enabled plugins" -msgstr "" +msgstr "Connectors permesos" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " @@ -478,7 +479,7 @@ msgstr "Inhabilita el connector anomenat" msgid "Communicate with Android phones." msgstr "Estableix comunicació amb telèfons Android" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -487,36 +488,47 @@ msgstr "" "dispositiu. S'usarà el primer directori del llistat que ja existeixi al " "dispositiu" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Estableix comunicació amb els telèfons S60." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." -msgstr "Comunicar-se amb els iBooks a través d'iTunes" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "Comunicar-se amb iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "Dispositiu Apple detectat, engegant iTunes, esperi si us plau ..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "Actualitzant la llista de metadades del dispositiu..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "%d de %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "finalitzat" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -526,17 +538,7 @@ msgstr "" "Elimina'ls utilitzant l'aplicació de l'iBooks.\n" "Clic a 'Veure Detalls' per a més informació." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "paràmetres dels controladors de dispostius" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "Llistat ordenat de formats que el dispositiu accepta" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -544,18 +546,22 @@ msgstr "" "Varies portades no s'han pogut convertir.\n" "Clic a 'Veure Detalls' per a més informació." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Notícies" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Comunica't amb iTunes" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "" @@ -581,9 +587,13 @@ msgstr "" msgid "Communicate with the EB600 eBook reader." msgstr "Estableix comunicació amb el lector de llibres electrònics EB600" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Comunica't amb l'Astak Mentor EB600" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." -msgstr "" +msgstr "Comunica't amb el lector PocketBook 301" #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" @@ -631,6 +641,8 @@ msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used." msgstr "" +"Llista separada per comes dels directoris als quals enviar llibres " +"electrònics en el dispositiu. S'usarà el primer que existeixi." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." @@ -699,10 +711,44 @@ msgstr "Estableix comunicació amb el lector de llibres electrònics Kindle 2" msgid "Communicate with the Kindle DX eBook reader." msgstr "Estableix comunicació amb el lector de llibres electrònics Kindle DX" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "Comunica amb el lector Kobo Reader" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "S'està obtenint el llistat de llibres disponibles al dispositiu..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "S'estan suprimint els llibres del dispositiu..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "S'estan suprimint llibres del llistat de metadades del dispositiu..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "S'estan afegint llibres al llistat de metadades del dispositiu..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Comunica amb el Palm Pre" @@ -711,6 +757,10 @@ msgstr "Comunica amb el Palm Pre" msgid "Communicate with the Booq Avant" msgstr "Comunicar-se amb Booq Avant" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Comunicar-se amb el Sweex MM300" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Estableix comunicació amb la tauleta d'Internet Nokia 770." @@ -719,6 +769,10 @@ msgstr "Estableix comunicació amb la tauleta d'Internet Nokia 770." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Estableix comunicació amb la tauleta d'Internet Nokia 810." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "Comunicar-se amb el Nokia E52" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "El Nook" @@ -748,7 +802,7 @@ msgstr "" "Llistat on apareixen, separats per coma, els camps de metadades per " "traslladar a les col·leccions del dispositiu. Les possibilitats inclouen: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "Sense nom" @@ -771,23 +825,23 @@ msgstr "Comunicar-se amb el lector Newsmy." msgid "Communicate with the iPapyrus reader." msgstr "Comunicar-se amb el lector iPapyrus." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "No s'ha pogut detectar la unitat de disc %s. Proveu a reiniciar." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "No s'ha pogut detectar el punt de muntatge %s. Proveu a reiniciar." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "No s'ha pogut detectar la unitat de disc %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "No s'ha pogut trobar l'assistent de muntatge: %s" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." @@ -795,25 +849,25 @@ msgstr "" "No s'ha pogut detectar la unitat de disc %s. El kernel probablement utilitza " "una versió obsoleta de SYSFS." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "No s'ha pogut muntar la memòria principal (Codi d'error: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "El lector no té cap targeta de memòria en aquesta ranura." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "Ranura seleccionada: %s no és compatible." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "No hi ha espai lliure suficient a la memòria principal" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "No hi ha espai lliure suficient a la targeta de memòria" @@ -821,24 +875,32 @@ msgstr "No hi ha espai lliure suficient a la targeta de memòria" msgid "Configure Device" msgstr "Configura el dispositiu" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "paràmetres dels controladors de dispostius" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Llistat ordenat de formats que el dispositiu accepta" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "Posa els fitxers a subdirectoris si el dispostiu ho permet" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Llegeix les metadades dels fitxers del dispositiu" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Planilla per a controlar quants llibres s'han desat" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Personalització addicional" @@ -851,36 +913,12 @@ msgstr "Estableix comunicació amb el lector de llibres electrònics." msgid "Get device information..." msgstr "Obté informació del dispositiu..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "S'està obtenint el llistat de llibres disponibles al dispositiu..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "S'estan transferint llibres al dispositiu..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "S'estan afegint llibres al llistat de metadades del dispositiu..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "S'estan suprimint els llibres del dispositiu..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "S'estan suprimint llibres del llistat de metadades del dispositiu..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "S'estan enviant metadades al dispositiu..." @@ -1709,14 +1747,10 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" -"No utilitzi SVG per a la tapa del llibre. Utilitzi aquesta opció si el seu " -"EPUB s'utilitzarà a un dispositiu que no es compatible amb SVG, com l'iPhone " -"o el jetBook Lite. Sense aquesta opció, dits dispositius mostraran la tapa " -"com una pàgina en blanc." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" @@ -1755,7 +1789,7 @@ msgstr "No insereixis un índex general al començament del llibre." msgid "Add Table of Contents to beginning of the book." msgstr "Afegeix l'índex general al començament del llibre." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1763,7 +1797,7 @@ msgstr "" "Travessia d'enllaços en fitxers HTML primerament per extensió. Normalment, " "són primerament travessats per profunditat." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1773,19 +1807,26 @@ msgstr "" "fitxers HTML. No han de ser negatius. 0 significa que no hi ha enllaços a " "l'arrel del fitxer HTML per seguir. El valor predeterminat es %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " "can result in various nasty side effects in the rest of of the conversion " "pipeline." msgstr "" +"Normalment aquest complement d'entrada recol.loca tots els arxius d'entrada " +"en un arbre de carpetes estàndard. Utilitza aquesta opció només si sap el " +"que està fent, ja que pot ocasionar diversos efectes desagradables a la " +"resta del procés de conversió." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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 "" +"Longitud de línia mitjana per a la divisió de línies si l'HTML ve d'una " +"conversió parcial prèvia d'un arxiu PDF. El valor per defecte és %default, " +"que desactiva aquesta opció." #: /home/kovid/work/calibre/src/calibre/ebooks/lit/from_any.py:47 msgid "Creating LIT file from EPUB..." @@ -1805,7 +1846,7 @@ msgstr "\tS'ha detectat un fitxer Baen. S'està reanalitzant..." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:361 msgid "Written preprocessed HTML to " -msgstr "" +msgstr "HTML preprocessat escrit en " #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:379 msgid "Processing %s" @@ -1834,40 +1875,46 @@ msgstr "No s'ha pogut afegir l'enllaç %s a la TDC" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:957 msgid "Unable to process image %s. Error: %s" -msgstr "" +msgstr "Incapaç de processar la imatge %s. Error: %s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1002 msgid "Unable to process interlaced PNG %s" -msgstr "" +msgstr "Incapaç de processar PNG entrellaçat %s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1017 msgid "" "Could not process image: %s\n" "%s" msgstr "" +"No puc processar la imatge: %s\n" +"%s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1772 msgid "" "An error occurred while processing a table: %s. Ignoring table markup." msgstr "" +"S'ha produït un error en processar una taula: %s. S'obvia el codi de la " +"taula." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1774 msgid "" "Bad table:\n" "%s" msgstr "" +"Taula errònia:\n" +"%s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1796 msgid "Table has cell that is too large" -msgstr "" +msgstr "La taula conté una cel.la massa gran" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1862 msgid "Could not read cover image: %s" -msgstr "" +msgstr "No s'ha pogut llegir la imatge de portada: %s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1865 msgid "Cannot read from: %s" -msgstr "" +msgstr "No es pot llegir de: %s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1994 msgid "Failed to process opf file" @@ -1904,7 +1951,7 @@ msgstr "S'ha escrit l'LRS a " #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:267 msgid "Could not read from thumbnail file:" -msgstr "" +msgstr "No s'ha pogut llegir el fitxer de miniatura:" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:287 msgid "" @@ -1919,7 +1966,7 @@ msgid "Path to output file" msgstr "Camí al fitxer de sortida" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Processament detallat" @@ -1975,25 +2022,31 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:104 msgid "Add extra spacing below the header. Default is %default pt." -msgstr "" +msgstr "Afegir l'espai sota la capçalera. Valor per defecte: %default pt." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:107 msgid "" "Minimum paragraph indent (the indent of the first line of a paragraph) in " "pts. Default: %default" msgstr "" +"Sagnat mínim per paràgrafs (el sagnat de la primera línia de cada paràgraf) " +"a pt. Valor per defecte: %default" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:112 msgid "" "Render tables in the HTML as images (useful if the document has large or " "complex tables)" msgstr "" +"Convertir les taules en documents HTML en imatges (molt útil si el document " +"consta de taules grans o complexes.)" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:117 msgid "" "Multiply the size of text in rendered tables by this factor. Default is " "%default" msgstr "" +"Multiplicar la mida del text en les taules convertides en imatges per aquest " +"factor. Valor per defecte %default" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:121 msgid "The serif family of fonts to embed" @@ -2011,100 +2064,100 @@ msgstr "Famí­lia de lletres monoespaiades per a incrustar." msgid "Comic" msgstr "Còmic" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Tí­tol" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autor(s)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Editorial" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Productor" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Comentaris" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Etiquetes" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Sèries" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Llengua" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Marca de temps" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publicat" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Drets" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazon.py:85 msgid "EDITORIAL REVIEW" -msgstr "" +msgstr "REVISIÓ EDITORIAL" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41 msgid "" "Extract common e-book formats from archives (zip/rar) files. Also try to " "autodetect if they are actually cbz/cbr files." msgstr "" +"Extreure els formats de llibre digital comuns de fitxers (zip / rar). També " +"intenta detectar automàticament si es tracta de fitxers cbz/cbr." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:20 msgid "options" @@ -2123,24 +2176,40 @@ msgid "" "some metadata on a file type that does not support it, the metadata will be\n" "silently ignored.\n" msgstr "" +"\n" +"Llegir / escriure metadades de / a fitxers de llibre electrònic.\n" +"\n" +"Formats suportats per llegir metadades: %s\n" +"\n" +"Formats suportats per escriure metadades: %s\n" +"\n" +"Els diferents tipus de fitxer admeten diferents tipus de metadades. Si " +"s'intenten establir metadades en un tipus de fitxer que no els suporta, les " +"metadades s'obviaran.\n" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:40 msgid "" "Set the authors. Multiple authors should be separated by the & character. " "Author names should be in the order Firstname Lastname." msgstr "" +"Establir els autors. Si hi ha diversos autors s'han de separar per «&». Els " +"noms dels autors han d'estar en el format Nom Cognom." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:44 msgid "" "The version of the title to be used for sorting. If unspecified, and the " "title is specified, it will be auto-generated from the title." msgstr "" +"La versió del títol que es fes servir per ordenar. Si no s'especifica " +"aquesta opció i sí el títol, es generarà automàticament a partir del títol." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:48 msgid "" "String to be used when sorting by author. If unspecified, and the author(s) " "are specified, it will be auto-generated from the author(s)." msgstr "" +"Text que es farà servir per ordenar per autor. Si no s'especifica aquesta " +"opció i si l'autor (s), es generarà automàticament a partir de l'autor (s)." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:52 msgid "Set the cover to the specified file." @@ -2152,7 +2221,7 @@ msgstr "Establiu la categoria del llibre." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:74 msgid "Set the published date." -msgstr "" +msgstr "Establir la data de publicació." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:77 msgid "Get the cover from the ebook and save it at as the specified file." @@ -2199,53 +2268,57 @@ msgstr "Portada desada a" msgid "No cover found" msgstr "No s'ha trobat cap caràtula" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Metadades baixades" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" -msgstr "" +msgstr "classificació" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "etiquetes" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2259,50 +2332,51 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "" @@ -2341,70 +2415,70 @@ msgstr "" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "" @@ -2877,283 +2951,287 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "Cap llibre seleccionat" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
%s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "Cap llibre seleccionat" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "No puc editar les meta-dades" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

The second and subsequently selected " @@ -3161,7 +3239,7 @@ msgid "" "proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

After merger the second and " @@ -3171,99 +3249,99 @@ msgid "" "from your computer.

Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "No puc desar al disc" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "No puc convertir-lo" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "No puc mostrar-lo" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3271,11 +3349,11 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "" @@ -3283,60 +3361,60 @@ msgstr "" msgid "Searching in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "" @@ -3424,23 +3502,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3483,55 +3561,56 @@ msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Camí" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formats" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Cap" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3580,7 +3659,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3590,7 +3669,7 @@ msgstr "" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3612,8 +3691,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" @@ -4048,97 +4127,97 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "No pot llegir-se" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "No tens permissos per a llegir l'arxiu: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Error llegint l'arxiu" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

There was an error reading from file:
" msgstr "

Error llegint de l'arxiu:
" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " no és una imatge vàlida" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Coberta" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -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:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Canvia la imatge de la &coberta:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 msgid "Browse for an image to use as the cover of this book." msgstr "Cerca una imatge per a utilitzar com a coberta d'aquest llibre." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Tí­tol: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "Canvia el tí­tol del llibre" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Autor(s): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "Ord&re per autor:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" msgstr "" "Canvia l'autor(s). Per a especificar més d'un, separeu-los amb comes." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Editorial: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "Etique&tes: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -4146,23 +4225,23 @@ msgstr "" "Etiquetes per a categoritzar el llibre (especialment útil per a recerques). " "

Pot emprar-se qualsevol paraula o frase, separada per comes." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Sèries:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "Llistat de sèries conegudes. Podeu afegir-hi de noves." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Llibre " @@ -4247,12 +4326,12 @@ msgid "PDB Input" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -4376,12 +4455,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "" @@ -4465,22 +4544,22 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -4602,6 +4681,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4630,128 +4710,145 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Envia a la memòria interna" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "Error en la comunicació amb el dispositiu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "Error comunicant amb el dispositiu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -4759,136 +4856,136 @@ msgstr "" "Hi ha hagut un error de comunicació amb el dispositiu. Lleve, torne a " "connectar el dispositiu i torne a iniciar el programa" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "Sense espai al dispositiu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "

No puc desar llibres al dispositiu perquè no hi ha espai restant " @@ -4979,237 +5076,237 @@ msgstr "&Perfil:" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Ubicació de la base de dades no vàlida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Ubicació de la base de dades no vàlida " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
Must be a directory." msgstr "
Cal que siga un directori." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
Cannot write to " msgstr "Ubicació de la base de dades no vàlida.
No es pot escriure " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -5217,35 +5314,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -5253,355 +5350,380 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" -msgstr "" +msgstr "Preferències" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Cerca la nova ubicació de la base de dades" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 -msgid "Add an email address to which to send books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 -msgid "&Add email" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 -msgid "Make &default" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 -msgid "&Remove email" +msgid "Disable all animations. Useful if you have a slow/old computer." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +msgid "Add an email address to which to send books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +msgid "&Add email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +msgid "Make &default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +msgid "&Remove email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "Nom d'&usuari:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "&Contrasenya:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

Remember to leave calibre running as the server only runs as long as " @@ -5612,33 +5734,33 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "" @@ -5675,10 +5797,10 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Data" @@ -5707,57 +5829,61 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5871,7 +5997,7 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "Format" @@ -5887,39 +6013,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5998,7 +6124,7 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -6007,14 +6133,14 @@ msgstr "" "exemple,ordena Vicent A. Estellés com a Estellés, Vicent A." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 -#: /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:372 msgid "&Rating:" msgstr "&Valoració:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "Valora aquest llibre: 0-5 estreles" @@ -6023,7 +6149,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " estreles" @@ -6033,8 +6159,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "" @@ -6062,10 +6188,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -6078,208 +6200,208 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "No puc aconseguir la coberta" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
" msgstr "No puc aconseguir la coberta.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Edita la meta-informació" -#: /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:362 msgid "Meta information" msgstr "Meta-informació" -#: /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:365 msgid "Swap the author and title" msgstr "" -#: /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:368 msgid "Author S&ort: " msgstr "&Ordena autors: " -#: /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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /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:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" msgstr "" -#: /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:390 msgid "dd MMM yyyy" msgstr "" -#: /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:391 msgid "&Date:" 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:392 msgid "&Comments" msgstr "" -#: /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:393 msgid "&Fetch metadata from server" 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:394 msgid "Available Formats" msgstr "Formats disponibles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "Afegir un nou format per a aquest llibre a la base de dades" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "" "Elimina els formats seleccionats per a aquest llibre de la base de dades." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "" @@ -6561,12 +6683,12 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:76 msgid "Authors" -msgstr "" +msgstr "Autors" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:107 msgid "Publishers" -msgstr "" +msgstr "Editors" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:110 msgid " (not on any book)" @@ -6626,7 +6748,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" @@ -6676,41 +6798,33 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -6974,17 +7088,17 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:121 msgid "Authors:" -msgstr "" +msgstr "Autors:" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 msgid "Regular expression (?P)" @@ -7030,128 +7144,134 @@ msgstr "Edita metadades en massa" msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Desa al disc" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Mostra" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "Converteix individualment" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Converteix tots" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "" @@ -7222,42 +7342,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Grandària (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Valoració" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Llibre %s de %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

" msgstr "" @@ -7301,11 +7421,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7406,99 +7526,99 @@ msgstr "" msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" @@ -7508,7 +7628,7 @@ msgstr "calibre" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255 msgid "&Restrict to:" -msgstr "" +msgstr "&Restringit a:" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:256 msgid "" @@ -7659,7 +7779,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:61 msgid "&Preferences" -msgstr "" +msgstr "&Preferències" #: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:62 msgid "&Quit" @@ -7677,20 +7797,20 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" -msgstr "" +msgstr "Cerca (per avançada feu clic a Cerca al botó a l'esquerra)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "" @@ -7700,7 +7820,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:52 msgid "(all books)" -msgstr "" +msgstr "(tots els llibres)" #: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 msgid "({0} of all)" @@ -7766,74 +7886,74 @@ msgstr "" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" -msgstr "" +msgstr "Ordena segons el nom" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" -msgstr "" +msgstr "Ordena segons la popularitat" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" -msgstr "" +msgstr "Ordena segons la classificació" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" -msgstr "" +msgstr "Qualsevol coincidència" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "" @@ -7900,72 +8020,72 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "No puc configurar-lo" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "No puc configurar-lo amb treballs processant-se" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8448,91 +8568,91 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "" @@ -8796,48 +8916,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -9223,7 +9343,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -9235,17 +9355,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -9254,19 +9374,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -9276,15 +9396,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9300,45 +9420,45 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

Migrating old database to ebook library in %s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:118 msgid "Ratings" -msgstr "" +msgstr "Classificació" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:24 msgid "The title" @@ -9632,6 +9752,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -9793,93 +9917,93 @@ msgstr "" msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "S'ha finalitzat la baixada" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9891,12 +10015,12 @@ msgstr "" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "" @@ -10352,3 +10476,17 @@ msgstr "" #~ msgstr "" #~ "Estableix comunicació amb el lector de llibres electrònics Sony PRS-" #~ "600/700/900." + +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Comunicar-se amb els iBooks a través d'iTunes" + +#~ msgid "" +#~ "Do not use SVG for the book cover. Use this option if your EPUB is going to " +#~ "be used ona device that does not support SVG, like the iPhone or the " +#~ "JetBook Lite. Without this option, such devices will display the cover as a " +#~ "blank page." +#~ msgstr "" +#~ "No utilitzi SVG per a la tapa del llibre. Utilitzi aquesta opció si el seu " +#~ "EPUB s'utilitzarà a un dispositiu que no es compatible amb SVG, com l'iPhone " +#~ "o el jetBook Lite. Sense aquesta opció, dits dispositius mostraran la tapa " +#~ "com una pàgina en blanc." diff --git a/src/calibre/translations/calibre.pot b/src/calibre/translations/calibre.pot index 256bad7b7d..16a7eae7ec 100644 --- a/src/calibre/translations/calibre.pot +++ b/src/calibre/translations/calibre.pot @@ -4,9 +4,9 @@ # msgid "" msgstr "" -"Project-Id-Version: calibre 0.7.4\n" -"POT-Creation-Date: 2010-06-19 18:08+MDT\n" -"PO-Revision-Date: 2010-06-19 18:08+MDT\n" +"Project-Id-Version: calibre 0.7.8\n" +"POT-Creation-Date: 2010-07-10 10:05+MDT\n" +"PO-Revision-Date: 2010-07-10 10:05+MDT\n" "Last-Translator: Automatically generated\n" "Language-Team: LANGUAGE\n" "MIME-Version: 1.0\n" @@ -25,28 +25,29 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 -#: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 -#: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:492 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:398 +#: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:97 +#: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:100 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -69,9 +70,9 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:911 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:916 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:982 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -99,49 +100,49 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:817 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:908 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1191 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1194 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1060 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -167,61 +168,61 @@ msgstr "" msgid "Catalog generator" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:15 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:16 msgid "Follow all local links in an HTML file and create a ZIP file containing all linked files. This plugin is run every time you add an HTML file to the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:52 msgid "Character encoding for the input HTML files. Common choices include: cp1252, latin1, iso-8859-1 and utf-8." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:59 msgid "Create a PMLZ archive containing the PML file and all images in the directory pmlname_img or images. This plugin is run every time you add a PML file to the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:93 msgid "Extract cover from comic files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:120 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:131 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:143 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:153 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:163 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:174 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:184 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:194 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:204 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:214 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:224 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:235 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:246 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:258 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:290 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:300 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:310 msgid "Read metadata from %s files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:269 msgid "Read metadata from ebooks in RAR archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:321 msgid "Read metadata from ebooks in ZIP archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:334 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:344 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:354 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:376 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:387 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:397 msgid "Set metadata in %s files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:365 msgid "Set metadata from %s files" msgstr "" @@ -250,7 +251,7 @@ msgid "This profile tries to provide sane defaults and is useful if you know not msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -259,126 +260,126 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "This profile tries to provide sane defaults and is useful if you want to produce a document intended to be read at a computer or on a range of devices." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "This profile is intended for the SONY PRS line. The 500/505/700 etc, in landscape mode. Mainly useful for comics." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:31 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:32 msgid "Installed plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:32 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:33 msgid "Mapping for filetype plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:33 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:34 msgid "Local plugin customization" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:34 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 msgid "Disabled plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:36 msgid "Enabled plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:84 msgid "No valid plugin found in " msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:460 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:468 msgid "Initialization of plugin %s failed with traceback:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:493 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:501 msgid "" " %prog options\n" "\n" @@ -386,27 +387,27 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:499 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:507 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:501 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:509 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:511 msgid "Customize plugin. Specify name of plugin and customization string separated by a comma." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:505 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:513 msgid "List all installed plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:507 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:515 msgid "Enable the named plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:509 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:517 msgid "Disable the named plugin" msgstr "" @@ -414,74 +415,79 @@ msgstr "" msgid "Communicate with Android phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "Comma separated list of directories to send e-books to on the device. The first one that exists will be used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:77 -msgid "Communicate with iBooks through iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:83 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:226 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:229 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:300 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:337 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:841 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:875 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:344 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:518 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:741 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:812 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2178 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "" @@ -504,7 +510,11 @@ msgstr "" msgid "Communicate with the EB600 eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -546,7 +556,7 @@ msgstr "" msgid "Communicate with the BOOX eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:121 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:123 msgid "Comma separated list of directories to send e-books to on the device. The first one that exists will be used." msgstr "" @@ -608,10 +618,44 @@ msgstr "" msgid "Communicate with the Kindle DX eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:159 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:139 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:162 +msgid "Getting list of books on device..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:219 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:263 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:264 +msgid "Removing books from device..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:267 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:271 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:276 +msgid "Removing books from device metadata listing..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:313 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:210 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:240 +msgid "Adding books to device metadata listing..." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "" @@ -620,6 +664,14 @@ msgstr "" msgid "Communicate with the Booq Avant" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:75 +msgid "Communicate with the Pandigital Novel" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "" @@ -628,6 +680,10 @@ msgstr "" msgid "Communicate with the Nokia 810 internet tablet." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "" @@ -652,7 +708,7 @@ msgstr "" msgid "Comma separated list of metadata fields to turn into collections on the device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "" @@ -673,45 +729,45 @@ msgstr "" msgid "Communicate with the iPapyrus reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "Unable to detect the %s disk drive. Your kernel is probably exporting a deprecated version of SYSFS." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "" @@ -719,24 +775,32 @@ msgstr "" msgid "Configure Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "" @@ -749,36 +813,12 @@ msgstr "" msgid "Get device information..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:192 msgid "Transferring books to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:307 msgid "Sending metadata to device..." msgstr "" @@ -1252,6 +1292,43 @@ msgstr "" msgid "Creating" msgstr "" +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/__init__.py:18 +msgid "ePub Fixer" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/epubcheck.py:18 +msgid "Workaround epubcheck bugs" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/epubcheck.py:22 +msgid "Workarounds for bugs in the latest release of epubcheck. epubcheck reports many things as errors that are not actually errors. epub-fix will try to detect these and replace them with constructs that epubcheck likes. This may cause significant changes to your epub, complain to the epubcheck project." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/main.py:19 +msgid "" +"%prog [options] file.epub\n" +"\n" +"Fix common problems in EPUB files that can cause them to be rejected by poorly designed publishing services.\n" +"\n" +"By default, no fixing is done and messages are printed out for each error detected. Use the options to control which errors are automatically fixed." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/main.py:50 +msgid "You must specify an epub file" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/unmanifested.py:17 +msgid "Fix unmanifested files" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/unmanifested.py:21 +msgid "Fix unmanifested files. epub-fix can either add them to the manifest or delete them as specified by the delete unmanifested option." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/unmanifested.py:32 +msgid "Delete unmanifested files instead of adding them to the manifest" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:56 msgid "Extract the contents of the generated EPUB file to the specified directory. The contents of the directory are first deleted, so be careful." msgstr "" @@ -1298,19 +1375,19 @@ msgstr "" msgid "Add Table of Contents to beginning of the book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "Traverse links in HTML files breadth first. Normally, they are traversed depth first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "Maximum levels of recursion when following links in HTML files. Must be non-negative. 0 implies that no links in the root HTML file are followed. Default is %default." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "Normally this input plugin re-arranges all the input files into a standard folder hierarchy. Only use this option if you know what you are doing as it can result in various nasty side effects in the rest of of the conversion pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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 "" @@ -1440,7 +1517,7 @@ msgid "Path to output file" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "" @@ -1513,88 +1590,86 @@ msgstr "" msgid "Comic" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:887 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:888 msgid "Author(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:209 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:214 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:215 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1079 msgid "Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1075 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1084 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1067 msgid "Timestamp" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "" @@ -1688,51 +1763,55 @@ msgstr "" msgid "No cover found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "To use isbndb.com you must sign up for a %sfree account%s and enter your access key below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -1745,48 +1824,48 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "Could not fetch cover as server is experiencing high load. Please try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Cover" msgstr "" @@ -1823,70 +1902,70 @@ msgstr "" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 msgid "Title Page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Glossary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Acknowledgements" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Bibliography" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Copyright" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Dedication" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "Foreword" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Illustrations" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "List of Tables" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Notes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Preface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1415 msgid "Main Text" msgstr "" @@ -1928,13 +2007,13 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:22 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:23 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:23 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:24 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:27 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:27 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:28 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 "" @@ -2051,7 +2130,7 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author" msgstr "" @@ -2172,15 +2251,15 @@ msgstr "" msgid "Specify the compression level to use. Scale 1 - 10. 1 being the lowest compression but the fastest and 10 being the highest compression but the slowest." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:34 msgid "Normally extra spaces are condensed into a single space. With this option all spaces will be displayed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:36 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:37 msgid "Run the text input through the markdown pre-processor. To learn more about markdown see" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:39 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:40 msgid "Do not insert a Table of Contents into the output text." msgstr "" @@ -2312,384 +2391,388 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:400 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:941 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
%s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:390 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:364 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:399 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:409 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:434 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:459 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:434 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:456 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:469 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:487 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:507 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:445 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:454 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:447 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:456 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:525 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:600 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:564 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:585 msgid "The selected books will be permanently deleted from your device. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:610 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:630 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:658 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:951 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:706 msgid "Cannot edit metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:735 msgid "All book formats and metadata from the selected books will be added to the first selected book.

The second and subsequently selected books will not be deleted or changed.

Please confirm you want to proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:746 msgid "All book formats and metadata from the selected books will be merged into the first selected book.

After merger the second and subsequently selected books will be deleted.

All book formats of the first selected book will be kept and any duplicate formats in the second and subsequently selected books will be permanently deleted from your computer.

Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:758 msgid "You are about to merge more than 5 books. Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:875 msgid "Cannot save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:878 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:911 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:959 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:964 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:975 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:978 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:995 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1009 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1058 msgid "Cannot convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1087 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1264 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1209 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1217 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 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/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1227 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "%s has no available formats." msgstr "" @@ -2697,56 +2780,56 @@ msgstr "" msgid "Searching in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:841 msgid "No books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "" @@ -2827,23 +2910,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:637 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -2859,12 +2942,12 @@ 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:254 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:259 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:265 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:268 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:270 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:147 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:149 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 @@ -2883,55 +2966,57 @@ msgstr "" msgid "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1065 msgid "Path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1074 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:274 msgid "None" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -2980,7 +3065,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -2990,7 +3075,7 @@ msgstr "" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3012,8 +3097,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" @@ -3431,114 +3516,114 @@ msgstr "" msgid "Set the metadata. The output file will contain as much of this metadata as possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

There was an error reading from file:
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -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:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 -msgid "&Title: " +msgid "Use cover from &source file" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 -msgid "Change the title of this book" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +msgid "&Title: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 -msgid "&Author(s): " +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +msgid "Change the title of this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 -msgid "Author So&rt:" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +msgid "&Author(s): " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 -msgid "Change the author(s) of this book. Multiple authors should be separated by a comma" +msgid "Author So&rt:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 -msgid "&Publisher: " +msgid "Change the author(s) of this book. Multiple authors should be separated by a comma" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 -msgid "Ta&gs: " +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +msgid "&Publisher: " 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:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 -msgid "Tags categorize the book. This is particularly useful while searching.

They can be any words or phrases, separated by commas." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +msgid "Ta&gs: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 -msgid "&Series:" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 +msgid "Tags categorize the book. This is particularly useful while searching.

They can be any words or phrases, separated by commas." 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:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +msgid "&Series:" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "" @@ -3623,12 +3708,12 @@ msgid "PDB Input" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -3751,12 +3836,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:76 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 msgid "Invalid regular expression: %s" msgstr "" @@ -3846,19 +3931,19 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "

Markdown is a simple markup language for text files, that allows for advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -3961,11 +4046,11 @@ msgstr "" msgid "

For example, to match all h2 tags that have class=\"chapter\", set tag to h2, attribute to class and value to chapter.

Leaving attribute blank will match any attribute and leaving value blank will match any value. Setting tag to * will match any tag.

To learn more advanced usage of XPath see the XPath Tutorial." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:127 msgid "Cover browser could not be loaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:179 msgid "Browse by covers" msgstr "" @@ -3974,6 +4059,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4002,258 +4088,271 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:49 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:155 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:271 msgid "Get device information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:282 msgid "Get list of books on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:292 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:301 msgid "Send metadata to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 msgid "Upload %d books to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:345 msgid "Delete books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:362 msgid "Download books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:372 msgid "View book on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:408 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:414 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:421 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:434 msgid "Send to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:436 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:438 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:452 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:471 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:510 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:516 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:521 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:529 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:639 msgid "Error communicating with device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:660 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:705 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:712 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:754 msgid "Device: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:756 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 -msgid "Connected " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:847 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:856 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:857 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:906 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:909 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:911 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:924 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:954 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:962 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1054 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1116 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1235 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:955 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:963 msgid "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:981 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:982 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:986 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1013 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1014 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1025 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1117 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1085 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1149 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1202 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "

Cannot upload books to device there is no more free space available " msgstr "" @@ -4294,7 +4393,7 @@ msgid "My Books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/catalog_ui.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:289 msgid "Generate catalog" msgstr "" @@ -4346,619 +4445,655 @@ msgstr "" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "If checked, downloaded news will be automatically mailed
to this email address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:504 msgid "The value %d you have chosen for the content server port is a system port. Your operating system may not allow the server to run on this port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:529 msgid "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "No valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 msgid "%s is not a valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:584 msgid "Choose plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "Plugin cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:597 msgid "The plugin: %s cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin not customizable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:607 msgid "Plugin: %s does not need customization" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:615 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:654 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:685 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:692 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:759 msgid "Error log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:766 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:794 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:331 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:818 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:826 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:891 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:888 msgid "
Must be a directory." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 msgid "Invalid database location.
Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:897 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:898 msgid "The changes you made require that Calibre be restarted. Please restart as soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:932 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:957 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:958 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 "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "Here you can control how calibre will read metadata from the files you add to it. calibre can either read metadata from the contents of the file, or from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 msgid "Swap the firstname and lastname of the author. This affects only metadata read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" -"If an existing book with a similar title and author is found that does not have the format being added, the format is added \n" +"If an existing book with a similar title and author is found that does not have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book already has the format, then it is silently ignored.\n" "\n" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:142 msgid "If books with similar titles and authors found, &merge the new files automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:143 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:144 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:145 msgid "Here you can control how calibre will save your books when you click the Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:146 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:147 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:148 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:149 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:150 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:151 msgid "File &formats to save:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:152 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:153 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:154 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:155 +msgid "Metadata &management:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:156 +msgid "Manual management" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:157 +msgid "Only on send" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:158 +msgid "Automatic management" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:159 +msgid "" +"

  • Manual Management: Calibre updates the metadata and adds collections only when a book is sent. With this option, calibre will never remove a collection.
  • \n" +"
  • Only on send: Calibre updates metadata and adds/removes collections for a book only when it is sent to the device.
  • \n" +"
  • Automatic management: Calibre automatically keeps metadata on the device in sync with the calibre library, on every connect
  • " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:162 msgid "Here you can control how calibre will save your books when you click the Send to Device button. This setting can be overriden for individual devices by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:163 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:174 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "&Location of ebooks (The ebooks are stored in folders sorted by author and metadata is stored in the file metadata.db)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Browse for the new database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Set the default timeout for network fetches (i.e. anytime we go out to the internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid " seconds" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Choose &language (requires restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Normal" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "High" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 msgid "Job &priority:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "Large" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Medium" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Small" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 msgid "&Button size in toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Show &text in toolbar buttons" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 msgid "Use internal &viewer for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 -msgid "Add an email address to which to send books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 -msgid "&Add email" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 -msgid "Make &default" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 -msgid "&Remove email" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 -msgid "calibre can send your books to you (or your reader) by email. Emails will be automatically sent for downloaded news to all email addresses that have Auto-send checked." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 -msgid "&Maximum number of waiting worker processes (needs restart):" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 -msgid "&Check database integrity" +msgid "Disable all animations. Useful if you have a slow/old computer." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 -msgid "&Install command line tools" +msgid "Disable &animations" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 -msgid "Open calibre &configuration directory" +msgid "Show &donate button (restart)" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 -msgid "Limit the max. simultaneous jobs to the available CPU &cores" +msgid "Add an email address to which to send books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 -msgid "Debug &device detection" +msgid "&Add email" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 -msgid "calibre contains a network server that allows you to access your book collection using a browser from anywhere in the world. Any changes to the settings will only take effect after a server restart." +msgid "Make &default" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 -msgid "Server &port:" +msgid "&Remove email" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +msgid "calibre can send your books to you (or your reader) by email. Emails will be automatically sent for downloaded news to all email addresses that have Auto-send checked." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +msgid "&Maximum number of waiting worker processes (needs restart):" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +msgid "&Check database integrity" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +msgid "&Install command line tools" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +msgid "Open calibre &configuration directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +msgid "Limit the max. simultaneous jobs to the available CPU &cores" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +msgid "Debug &device detection" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +msgid "calibre contains a network server that allows you to access your book collection using a browser from anywhere in the world. Any changes to the settings will only take effect after a server restart." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +msgid "Server &port:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /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:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "If you leave the password blank, anyone will be able to access your book collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "The maximum size (widthxheight) for displayed covers. Larger covers are resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as calibre is running.\n" "

    Stanza should see your calibre collection automatically. If not, try adding the URL http://myhostname:8080 as a new catalog in the Stanza reader on your iPhone. 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/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Here you can customize the behavior of Calibre by controlling what plugins it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 msgid "&Customize plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Remove plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:635 msgid "Add new plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:636 msgid "Plugin &file:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:638 msgid "&Add" msgstr "" @@ -5004,10 +5139,10 @@ msgstr "" #: #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:889 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "" @@ -5043,67 +5178,72 @@ msgid "Long text, like comments, not shown in the tag browser" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "The label must contain only letters, digits and underscores, and start with a letter" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5219,13 +5359,18 @@ msgid "ERROR" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:67 +msgid "All checked books will be permanently deleted from your device. Please verify the list." +msgstr "" + +#: +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75 msgid "Location" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1064 msgid "Format" msgstr "" @@ -5243,39 +5388,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5348,19 +5493,19 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 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:162 -#: /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:372 msgid "&Rating:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "" @@ -5369,7 +5514,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr "" @@ -5379,8 +5524,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "" @@ -5408,10 +5553,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -5424,206 +5565,206 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "" -#: /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:362 msgid "Meta information" msgstr "" -#: /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:365 msgid "Swap the author and title" msgstr "" -#: /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:368 msgid "Author S&ort: " 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /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:386 msgid "IS&BN:" 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:387 msgid "Publishe&d:" msgstr "" -#: /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:390 msgid "dd MMM yyyy" msgstr "" -#: /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:391 msgid "&Date:" 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:392 msgid "&Comments" msgstr "" -#: /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:393 msgid "&Fetch metadata from server" 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:394 msgid "Available Formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "" @@ -5966,7 +6107,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" @@ -6010,41 +6151,37 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:20 +msgid "%s (was %s)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -6285,11 +6422,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:92 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:99 msgid "No match" msgstr "" @@ -6329,136 +6466,160 @@ msgstr "" msgid "Save single format to disk..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:53 msgid "Edit metadata individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:56 msgid "Edit metadata in bulk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:59 msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:64 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:67 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:73 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:76 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 msgid "Add books from a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:86 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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:90 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:93 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:160 msgid "Save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 msgid "Save to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:396 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:166 msgid "View" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:121 msgid "View specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 msgid "Remove selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:129 msgid "Remove files of a specific format from selected books.." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:132 msgid "Remove all formats from selected books, except..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:135 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:138 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:157 msgid "Bulk convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:161 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:169 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:191 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:223 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:239 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:319 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:337 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:358 +msgid "version" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:359 +msgid "created by Kovid Goyal" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:377 +msgid "Connected " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:386 +msgid "Update found" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:439 msgid "Book Details" msgstr "" @@ -6521,6 +6682,215 @@ msgstr "" msgid " - Jobs" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64 +msgid "" +"Library\n" +"%d books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65 +msgid "" +"Reader\n" +"%s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66 +msgid "" +"Card A\n" +"%s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67 +msgid "" +"Card B\n" +"%s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71 +msgid "Click to see the books available on your computer" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74 +msgid "Click to see the books in the main memory of your reader" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75 +msgid "Click to see the books on storage card A in your reader" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:76 +msgid "Click to see the books on storage card B in your reader" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84 +msgid "Books located at" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:100 +msgid "free" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:134 +msgid "Books display will be restricted to those matching the selected saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:136 +msgid "Advanced search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:140 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:141 +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/layout.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:142 +msgid "Reset Quick Search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:144 +msgid "Copy current search text (instead of search name)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:146 +msgid "Save current search under the name shown in the box" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:148 +msgid "Delete current saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:150 +msgid "Add books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:151 +msgid "A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:153 +msgid "Remove books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:154 +msgid "Del" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:406 +msgid "Edit meta info" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:156 +msgid "E" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:157 +msgid "Merge book records" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:158 +msgid "M" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:159 +msgid "Send to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:161 +msgid "S" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:162 +msgid "Fetch news" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:163 +msgid "F" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:164 +msgid "Convert books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:165 +msgid "C" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:167 +msgid "V" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:168 +msgid "Open containing folder" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:415 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:169 +msgid "Show book details" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:417 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:170 +msgid "Books by same author" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:419 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:171 +msgid "Books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:421 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:172 +msgid "Books by this publisher" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:173 +msgid "Books with the same tags" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:176 +msgid "Ctrl+P" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:177 +msgid "Help" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:178 +msgid "Browse the calibre User Manual" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:179 +msgid "F1" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 msgid "N" msgstr "" @@ -6529,42 +6899,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1084 msgid "Book %s of %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:679 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1182 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:890 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1162 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1165 msgid "Double click to edit me

    " msgstr "" @@ -6608,11 +6978,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:526 msgid "Dropping onto a device is not supported. First add the book to the calibre library." msgstr "" @@ -6711,243 +7081,125 @@ msgstr "" msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "Your calibre database appears to be corrupted. Do you want calibre to try and repair it automatically? If you say No, a new empty calibre library will be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:131 msgid "calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:133 msgid "&Restrict to:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:256 -msgid "Books display will be restricted to those matching the selected saved search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:135 msgid "set in ui.py" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:258 -msgid "Advanced search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:260 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:138 msgid "Alt+S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:139 msgid "&Search:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:262 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:263 -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:264 -msgid "Reset Quick Search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:266 -msgid "Choose saved search or enter name for new saved search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:267 -msgid "Copy current search text (instead of search name)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:269 -msgid "Save current search under the name shown in the box" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271 -msgid "Delete current saved search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:273 -msgid "Add books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:274 -msgid "A" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:275 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:276 -msgid "Remove books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:277 -msgid "Del" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:155 msgid "Edit meta information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:279 -msgid "E" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:280 -msgid "Merge book records" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:281 -msgid "M" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:282 -msgid "Send to device" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:284 -msgid "S" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:285 -msgid "Fetch news" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:286 -msgid "F" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:287 -msgid "Convert E-books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:288 -msgid "C" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:290 -msgid "V" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:291 -msgid "Open containing folder" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:292 -msgid "Show book details" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:293 -msgid "Books by same author" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:294 -msgid "Books in this series" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:295 -msgid "Books by this publisher" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:296 -msgid "Books with the same tags" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:175 msgid "Configure calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:299 -msgid "Ctrl+P" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:20 msgid "Redirect console output to a dialog window (both stdout and stderr). Useful on windows where GUI apps do not have a output streams." msgstr "" @@ -6972,32 +7224,41 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:553 msgid "Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:315 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:357 msgid "Search (For Advanced Search click the button to the left)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:398 msgid "Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:406 +msgid "Choose saved search or enter name for new saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:10 +msgid "Restrict to" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:48 msgid "({0} of {1})" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 msgid "(all books)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:56 msgid "({0} of all)" msgstr "" @@ -7061,77 +7322,89 @@ msgstr "" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:772 +msgid "Set the sort order for entries in the Tag Browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:778 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:778 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:783 +msgid "When selecting multiple entries in the Tag Browser match any or all of them" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:787 msgid "Manage &user categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:790 +msgid "Add your own categories to the Tag Browser" +msgstr "" + #: /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)" @@ -7155,15 +7428,15 @@ msgstr "" msgid "Queueing " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:239 msgid "Fetch news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:301 msgid "Convert existing" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:302 msgid "The following books have already been converted to %s format. Do you wish to reconvert them?" msgstr "" @@ -7175,96 +7448,84 @@ msgstr "" msgid "&Donate to support calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:168 msgid "&Eject connected device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:173 msgid "&Restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:206 -msgid "

    For help see the: User Manual
    " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:212 -msgid "%s: %s by Kovid Goyal %%(version)s
    %%(device)s

    " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:227 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:380 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:376 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:381 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:424 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:425 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:477 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:478 msgid "

    Could not convert: %s

    It is a DRMed book. You must first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:491 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:506 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 -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." +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:546 +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. Your donation helps keep calibre development going." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:572 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:575 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:579 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:632 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/update.py:52 -msgid "Latest version: %s" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/update.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:56 msgid "Update available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/update.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:57 msgid "%s has been updated to version %s. See the new features. Visit the download page?" msgstr "" @@ -7724,91 +7985,43 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 -msgid "" -"Library\n" -"%d\n" -"books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 -msgid "" -"Reader\n" -"%s\n" -"available" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 -msgid "" -"Card A\n" -"%s\n" -"available" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 -msgid "" -"Card B\n" -"%s\n" -"available" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 -msgid "Click to see the books available on your computer" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 -msgid "Click to see the books in the main memory of your reader" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 -msgid "Click to see the books on storage card A in your reader" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 -msgid "Click to see the books on storage card B in your reader" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 -msgid "Books located at" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:364 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:365 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:366 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:367 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:368 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:837 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:869 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:876 msgid "Hide" msgstr "" @@ -8031,48 +8244,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -8414,7 +8627,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -8426,15 +8639,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "If the column stores multiple values, append the specified values to the existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -8443,19 +8656,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -8465,15 +8678,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -8489,39 +8702,39 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" @@ -8789,6 +9002,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "How and when calibre updates metadata on the device." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -8947,91 +9164,91 @@ msgstr "" msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Download finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:710 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid " from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:720 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:809 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:830 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:835 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Trying to download cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:843 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:924 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:940 msgid "Feeds downloaded to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:950 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:962 msgid "Downloading cover from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1002 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1192 msgid "Untitled Article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1263 msgid "Article downloaded: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1274 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1291 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1438 msgid "Failed to log in, check your username and password for the calibre Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1454 msgid "You do not have permission to download this issue. Either your subscription has expired or you have exceeded the maximum allowed downloads for today." msgstr "" @@ -9041,12 +9258,12 @@ msgstr "" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "" diff --git a/src/calibre/translations/cs.po b/src/calibre/translations/cs.po index 65d3cfe0a7..5a1983fad7 100644 --- a/src/calibre/translations/cs.po +++ b/src/calibre/translations/cs.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:14+0000\n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-02 18:25+0000\n" "Last-Translator: Kovid Goyal \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-19 03:47+0000\n" +"X-Launchpad-Export-Date: 2010-07-03 03:43+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -27,28 +27,29 @@ msgstr "Nedělá vůbec nic" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -71,9 +72,9 @@ msgstr "Nedělá vůbec nic" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -101,49 +102,49 @@ msgstr "Nedělá vůbec nic" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -179,7 +180,7 @@ msgstr "" "všechny soubory na které odkazy směrují. Tento modul je spušten pokaždé, " "když je do knihovny přidán HTML soubor." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -187,7 +188,7 @@ msgstr "" "Kódování vstupních HTML souborů. Bežně používané kódování jsou např. cp1252, " "latin1 iso-8859-1 nebo UTF-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -197,49 +198,49 @@ msgstr "" "pmlname_img nebo images. Tento plugin je spuštěn pokaždé když přidáte PML " "soubor do knihovny." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Vyjmout obálky ze souborů s komixy" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Načíst metadata ze souborů %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Načíst metadata z elektronických knih v RAR archívech" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Načíst metadata z elektronických knih v ZIP archívech" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Nastavuje metadata do souborů %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Nastavuje metadata ze souborů %s" @@ -284,7 +285,7 @@ msgstr "" "nevíte nic o vstupním dokumentu" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "Tento profil je určen pro řadu SONY PSR. modely 500/505/600/700 atd." @@ -294,70 +295,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Tento profil je určen pro SONY PSR 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Tento profil je určen pro SONY PSR 900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Tento profil je určený pro Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Tento profil je určený pro knihy Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Tento profil je určený pro Hanlin V3 a jeho klony." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Tento profil je určen pro Hanlin V5 a jeho klony." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Tento profil je určený pro Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Tento profil je určen pro Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Tento profil je určený pro Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Tento profil je určen pro Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Tento profil je určen pro Irex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Tento profil je určený pro IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Tento profil je určen pro B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Výstupní profil" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -367,24 +368,24 @@ msgstr "" "chcete vytvořit dokument určený ke čtení na počítači nebo na vetším rozpětí " "zařízení." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Tento profil je určen pro SONY PSR 300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Tento profil je určen pro 5\" Jetbook" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -392,7 +393,7 @@ msgstr "" "Tento profil je určený pro zařízení SONY PRS. 500/505/700 atd. pro čtení na " "šířku. Nejvíce užitečné pro čtení komiksu." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Tento profil je určený pro Amazon Kindle DX." @@ -467,7 +468,7 @@ msgstr "Deaktivovat modul podle jména" msgid "Communicate with Android phones." msgstr "Komunikace s telefony Android." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -475,70 +476,75 @@ msgstr "" "seznam adresářů oddělený čárkami k odeslání knih na zařízení. První který " "existuje pude použit." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "Záznamy metadat v zařízení se aktualizují..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "hotovo" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "nastavení ovladačů zařízení" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "Setříděný seznam formátů, které toto zařízení přijme." - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Zprávy" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Komunikuje se čtečkou Binatone Readme." @@ -561,7 +567,11 @@ msgstr "Komunikuje se čtečkou Cybook Gen 3 / Opus." msgid "Communicate with the EB600 eBook reader." msgstr "Komunikace s zařízením EB600." -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -667,10 +677,44 @@ msgstr "Komunikace s zařízením Amazon Kindle 2." msgid "Communicate with the Kindle DX eBook reader." msgstr "Komunikuje se čtečkou Kindle DX." -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Získávám seynam knih na zařízení..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Odstraňuji knihy ze zařízení..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Odebírám knihy ze seznamu metadat v zařízení..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Přidávám knihy do seznamu metadat v zařízení..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "" @@ -679,6 +723,10 @@ msgstr "" msgid "Communicate with the Booq Avant" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Komunikuje s tabletem Nokia 770." @@ -687,6 +735,10 @@ msgstr "Komunikuje s tabletem Nokia 770." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Komunikuje s tabletem Nokia 810." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "Nook" @@ -715,7 +767,7 @@ msgstr "" "Čárkami oddělený seznam metadata polí ze kterých se má vytvořït Sbírka na " "zařízeni. Možnosti zahrnují: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "Nepojmenovaný" @@ -736,23 +788,23 @@ msgstr "" msgid "Communicate with the iPapyrus reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "Nepodařilo se najít disk %s. Zkuste reboot." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "nemohu nalézt %s přípojný bod. Zkuste rebootovat." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "Nemohu detekovat disk %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "Nemohu nalézt mount helper: %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." @@ -760,25 +812,25 @@ msgstr "" "Nemohu detekovat disk %s. Váš Kernel pravděpodobně exportuje zastaralou " "verzi SYSFS." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "Nemohu připojit hlavní paměť (Kód chyby: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "Čtečka nemá v tomto slotu žádnou pamětovou kartu." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "Vybraný slot: %s není podporováno." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "V hlavní paměti není dostatek volného místa" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "Na paměťové kartě není dostatek volného místa" @@ -786,24 +838,32 @@ msgstr "Na paměťové kartě není dostatek volného místa" msgid "Configure Device" msgstr "Konfigurovat zařízení" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "nastavení ovladačů zařízení" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Setříděný seznam formátů, které toto zařízení přijme." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "Uložit soubory do podadresářů pokud je zařízení podporuje." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Číst metadata ze souborů zařízení" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Šablona určující jak se májí knihy ukládat" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Další přizpůsobení" @@ -816,36 +876,12 @@ msgstr "Komunikace s čtecím zařízením." msgid "Get device information..." msgstr "Zjistit informace o zařízení..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "Získávám seynam knih na zařízení..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "Přenos knih do zařízení..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "Přidávám knihy do seznamu metadat v zařízení..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "Odstraňuji knihy ze zařízení..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "Odebírám knihy ze seznamu metadat v zařízení..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "Odesílám metadata do zařízení..." @@ -1609,7 +1645,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" @@ -1645,20 +1681,20 @@ msgstr "" msgid "Add Table of Contents to beginning of the book." msgstr "Přidat obsah na začátek knihy." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " "Default is %default." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1666,7 +1702,7 @@ msgid "" "pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1808,7 +1844,7 @@ msgid "Path to output file" msgstr "Cesta k výstupnímu souboru" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Zvýšit množství vypisovaných informací" @@ -1905,88 +1941,86 @@ msgstr "Font pro neproporcionání písmo" msgid "Comic" msgstr "Komiks" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Název" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autor(ři)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Vydavatel" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Producent" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Komentáře" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Tagy" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Série" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Jazyk:" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Časová značka" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publikováno" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Práva" @@ -2095,39 +2129,43 @@ msgstr "Obálka uložena do" msgid "No cover found" msgstr "Obálka nenalezena" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Stáhnutí metadat" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "hodnocení" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "tagy" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "popis/recenze" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "Stáhnout %s z %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Stáhnout metadata z Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Stáhnout metadata z isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2135,15 +2173,15 @@ msgstr "" "K použití isbndb.com se musíte zaregistrovat %súčet zdarma%s a vložit váš " "přístupový kód níže." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Stáhnout sociální metadata z amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2157,27 +2195,27 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "ISBN kód knihy, pro kterou si přejete získat metadata." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "Auto hledané knihy." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "Název hledané knihy." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "Vydavatel hledané knihy" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "LibraryThing.com neodpovídá. Skuste to později." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2185,28 +2223,25 @@ msgstr "" "Nepodařilo se stáhnout obálku, protože je server přetížený. Prosím zkuste to " "později." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " se nepodařilo nalézt." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "Chyba serveru LibraryThing.com. Skuste to později." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -"\n" -"%prog [možnosti] ISBN\n" -"\n" -"Stáhnout obálku knihy identifikované uvedeným kódém ISBN z LibraryThing.com\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Obálka" @@ -2245,70 +2280,70 @@ msgstr "Všechny články" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Titulní stránka" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Obsah" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Rejstřík" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Slovník pojmů" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Pděkování" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliografie" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Tiráž" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Autorská práva" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Věnování" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Doslov" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Předmluva" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Seznam Ilustrací" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Seznam tabulek" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Poznámky" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Úvod" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Hlavní text" @@ -2787,217 +2822,221 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "&Kopírovat do schránky" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "Nejsou označeny žádné knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
    Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
    Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
    %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "Odesílám knihy do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "Knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "EPUB knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "LRF knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "HTML knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "LIT knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "MOBI knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "TXT knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "PDF knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "Komiksy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "Archívy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "Není označena žádná kniha" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "Mažu knihy ze zařízení." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -3005,67 +3044,67 @@ msgstr "" "Označené knihy budou trvale smazány a soubory budou odstraněny z " "vašeho počítače. Opravdu je chcete odstranit?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "Nemůžu stáhnout metadata." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "obálky" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "Stahuji %s pro %d knihu(y)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "Selhalo stahování některých metadat" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "Selhalo stahovaní metadat pro následující:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "Selhalo stahování metadat:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Chyba" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "Nemůžu upravit metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

    The second and subsequently selected " @@ -3073,7 +3112,7 @@ msgid "" "proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

    After merger the second and " @@ -3083,99 +3122,99 @@ msgid "" "from your computer.

    Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "Chyba zápisu na disk" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "Zvolte cílový adresář" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "Chyba při ukládání" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "Při ukládání nastala chyba." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "Nemohu uložit některé knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 msgid "Click the show details button to see which ones." msgstr "Klikněte na tlačítko zobrazit detaily pro zjištění které z nich." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "Získávám zprávy z " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr " získány." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "Nemůžu převást" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "Nemůžu zobrazit" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "Vyberte formát který se má zobrazit" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3183,11 +3222,11 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "Nemohu otevřít adresář" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "%s není dostupná v žádném dostupném formátu." @@ -3195,61 +3234,61 @@ msgstr "%s není dostupná v žádném dostupném formátu." msgid "Searching in" msgstr "Hledám v" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Přidávám..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Prohledávám všechny podadresáře..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Žádné knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Byly nalezeny duplikáty!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" msgstr "" "Knihy se stejným názvem jsou již v databázi. Mají být přesto přidány?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Ukládám..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Uložené" @@ -3337,23 +3376,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3396,55 +3435,56 @@ msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Cesta" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formáty" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Žádné" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3493,7 +3533,7 @@ msgstr "výstup" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3503,7 +3543,7 @@ msgstr "výstup" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3525,8 +3565,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Katalog" @@ -3964,96 +4004,96 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Vyberte obálku pro " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Nemůžu přečíst" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "Nemáte přístupová práva na čtení souboru: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Chyba při čtení souboru" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

    There was an error reading from file:
    " msgstr "

    Chyba při čtení souboru:
    " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " není platný obrazový soubor" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Obálka knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Použít Obálku ze &zdrojového souboru" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Změnit &obálku:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 msgid "Browse for an image to use as the cover of this book." msgstr "Vybete obrázkový soubor . který se použije jako obálka této knihy." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "Použít Obálku ze &zdrojového souboru" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Název: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "Změnit název táto knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Autor(ři) " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "Autor ve tvaru \"&příjmení, jméno\"." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" msgstr "Autor(ři) této knihy. Vícero autorů by mělo být odděleno čárkami" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Vydavatel: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "Ta&gy: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." @@ -4061,23 +4101,23 @@ msgstr "" "Tagy řadí knihu do kategorií. Užitečné jsou zvláště při vyhledávání. " "

    Můžou to být libovolné slova nebo fráze, oddělené čárkami." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Série:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "Seznam známých sérií. Můžete přidat novou sérii." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Kniha " @@ -4162,12 +4202,12 @@ msgid "PDB Input" msgstr "PDB vstup" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Považovat každý řádek za odstavec" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -4291,12 +4331,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "" @@ -4380,22 +4420,22 @@ msgstr "" msgid "TXT Input" msgstr "TXT vstup" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -4517,6 +4557,7 @@ msgstr "Prohlížet obálky" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4545,128 +4586,145 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "Odstranit všechny tagy" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "Zařízení už není připojené" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "Získat informace o zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "Získat seznam knih v zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "Odeslat metadata do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "Odeslat %d knih do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "Smazat knihy ze zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "Převzít knihy ze zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "Zobrazit knihu v zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "Nastavit výchozí nastavení pro odeslání do čtečky" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Odeslat do hlavní paměti" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Odeslat na pamětovou kartu A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Odeslat na pamětovou kartu B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "Cyba komunikace se zařízením" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "Chyba komunikace se zařízením" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -4674,136 +4732,136 @@ msgstr "" "Dočasná chyba komunikace se zařízením. Prosím odpojte a znovu připojte " "zařízení anebo restarujte počítač." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "Zařízení: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr " nalezeno." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "Připojeno " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "vybrané k odeslání" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "Vyberte formát k odeslání do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "Žádné zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "Nemohu odeslat: Není připojeno žádné zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Žádná karta" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "Nemohu odeslat: Zařízení nemá pamětovou kartu." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "od" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Odeslat email" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "Žádné vhodné formáty" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "Zprávy:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Odeslat zprávy do" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Odeslat katalog do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "Odesílám zprávy do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "Odesílám knihy do zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "Na zařízení není volné místo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" @@ -4896,47 +4954,47 @@ msgstr "&Profil:" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Převod" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Obecné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Rozhraní" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Přidat/Uložit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Rozšířené" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -4944,193 +5002,193 @@ msgstr "" "Obsahový\n" "Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Moduly" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Automaticky odeslat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "Email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "Selhala Instalce nástrojů pro příkazovou řádku." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "Chybí platná cesta k modulům" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s není platná cesta k modulům" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Zvolte modul" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Modul není možné deaktivovat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "Modul %s nemůže být deaktivován" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Modul není upravitelný" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Modul %s nevyžaduje žádné úpravy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "Vestavěný modul není možné odstranit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" " nemůže být odstraněn. Je to vestavěbý modul. Skuste ho místo odstranění " "deaktivovat." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "Jste si jisti?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Záznam o chybách:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "Záznam o přístupu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "Nepodařilo se spustit obdahový server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Neplatná velikost" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "Velikost %s je neplatná. Požadovaný formát je šířka x výška" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Neplatné umístění databáze" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Neplatné umístění databáze " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "
    Musí být adresář." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "Neplatné umístění databáze.
    Nemůžu zapsat do " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -5138,35 +5196,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -5174,81 +5232,98 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "&Přidání knih" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Uložit &obálku odděleně" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "Převést neAnglické znaky na Anglické &ekvivalenty" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "Formát data:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "&Formáty souborů k uložení:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Nahradit mezer&u podtržitkem" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Změnit cesty na malá písmena" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "&Ukládání Knih" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "Odeslání do &zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Možnosti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -5256,27 +5331,27 @@ msgstr "" "&Umístění elektronických knih (Knihy jsou umístěné v adresářích podla autora " "a metadata jsou uložené v souboru metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Určete nové umístění databáze" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Zobrazit upozornění pokud je dostupná &nová verze." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "Výchozí časový &limit sítě:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -5284,174 +5359,182 @@ msgstr "" "Výchozí časový limit pro síťové dotazy (např. pokaždé když jdeme na Internet " "získat informace)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " sekund" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Vyberte &jazyk (vyžaduje restart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Normální" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Vysoká" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Nízká" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "&Priorita úloh:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Upřednostňovaný výstupní formát:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Pořadí preference &vstupních formátů:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "Číslovat knihy v sérii &Římskými číslicemi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "Zobrazit &ikonu v sýstémové liště (vyžaduje restart)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Zobrazovat upozor&nění v systémové liště" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "Zobrazit prohlížec &obálek v samostatném okně (vyžaduje restart)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "Vyhledávat při zadávání" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "&Automaticky odeslat stažené zprávy do čtecího zařízení" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "Smazat zprávy z knihovny když jsou automaticky odeslány do čtečky" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "Počet obálek zobraze&ných v přohlížecím módu (vyžaduje restart)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Panel nástrojů" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Velké" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Střední" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Malé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "&Velikost tlačítek na panelu nástrojů" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "Zobrazit &text na tlačítkách panelu nástrojů" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "Viditelné sloup&ce v seznamu knih v knihovne" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "Použít interní &prohlížec pro:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "Přdat emailovou adresu na kterou posílat knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "Přidat em&ail" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Nastavit &výchozí" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "Odst&ranit email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "&Maximální počet procesů ve frontě (vyžaduje restart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " @@ -5461,25 +5544,25 @@ msgstr "" "pomocí internetového prohlížeče z jakehokoliv místa na světě. Změny v " "nastaení se projeví až po restartu serveru." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "&Port serveru:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "&Uživatelské jméno:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "&Heslo:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -5487,7 +5570,7 @@ msgstr "" "Pokud ponecháte heslo prázdné, kdokoliv bude mít přístup k vaší zbírce knih " "přes webové rozhraní." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -5495,45 +5578,45 @@ msgstr "" "Maximální velikost (šířka x výška) zobrazených obálek. Velké obálky budou " "zmenšené. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "Max. velikost &obálek:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "Zobrazit he&slo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "&Spustit server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "&Zastavit server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "&Test serveru" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "&Automaticky spustit server při startu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Zobrazit &serverové záznamy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5544,34 +5627,34 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" "Tady můžete upravit chování calibre, určením které moduly bude používat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Aktivovat/&Deaktivovat modul" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "&Upravit modul" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&Odstranit modul" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Přidat nový modul" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "&Soubor modulu:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "Přid&at" @@ -5608,10 +5691,10 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Datum" @@ -5640,57 +5723,61 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5804,7 +5891,7 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "Formát" @@ -5820,39 +5907,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Autor (seřadit jako)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "Hledám metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Varování" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "Nenalezeny žádné metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5931,21 +6018,21 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 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:162 -#: /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:372 msgid "&Rating:" msgstr "&Hodnocení:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "Hodnocení této knihy. 0-5 hvězdiček" @@ -5954,7 +6041,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr "" @@ -5964,8 +6051,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "Otevřít Editor značek" @@ -5993,10 +6080,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -6009,207 +6092,207 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "Nepodařilo se načíst obálku" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Stáhnout obálku..." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Špatná obálka" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "" -#: /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:362 msgid "Meta information" msgstr "" -#: /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:365 msgid "Swap the author and title" msgstr "" -#: /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:368 msgid "Author S&ort: " 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /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:386 msgid "IS&BN:" 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:387 msgid "Publishe&d:" msgstr "" -#: /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:390 msgid "dd MMM yyyy" msgstr "" -#: /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:391 msgid "&Date:" 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:392 msgid "&Comments" msgstr "&Komentáře" -#: /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:393 msgid "&Fetch metadata from server" msgstr "Získat data ze serveru" -#: /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:394 msgid "Available Formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Stáhnout obálku" @@ -6556,7 +6639,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" @@ -6608,41 +6691,33 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "Přidat tag do seznamu dostupných tagů a aplikovat na aktuální knihu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -6918,11 +6993,11 @@ msgstr "Regulární výraz (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "Žádná shoda" @@ -6974,31 +7049,31 @@ msgstr "Upravit metadata dávkově" msgid "Download metadata and covers" msgstr "Stáhnout metadata a obálky" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "Stáhnout pouze metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "Stáhnout pouze obálky" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "Přidat Knihy z jednoho adresáře" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -7007,7 +7082,7 @@ msgstr "" "adresář představuje jednu knihu a soubory v něm jsou různé formáty té samé " "knihy)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -7015,93 +7090,99 @@ msgstr "" "Přidat knihy z adresárů, včetně podadresářů (vícero knih v jednom adresáři, " "předpokládá se že každý soubor představuje jednu knihu)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "Přidat prázdnou knihu. (Položka knihy bez žádných formátů)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Uložit na disk" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "Uložit na disk v jednom adresáři" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "Uložit jen formát %s na disk" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Zobrazit" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "Zobrazit určitý formát" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "Smazat vybrané knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "Odstranit soubory se zvoleným formátem z označených knih" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "" "Odstranit všechny soubory se zvoleným formátem z označených knih, mimo..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "Převést Individuálně" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Převést dávkově" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "Spustit uvítacího průvodce" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "Podobné knihy..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "" @@ -7172,42 +7253,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Velikost (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Hodnocení" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Kniha %s z %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "" @@ -7251,11 +7332,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Nedovolené" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7358,99 +7439,99 @@ msgstr "" msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Neplatné umístění databáze" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "Nemůžu spistit " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s je již spuštěno" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "pravá horní oblast obrazovky" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "pravý dolní okraj obrazovky" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "skuste restartovat počítač." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "pokuste se vymazat smazat soubor" @@ -7631,20 +7712,20 @@ msgstr "Kniha nemá ani název ani ISBN" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "Vyhledávání (pro rozšířené vyhledávání klikněte na tlačítko vlevo)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "" @@ -7720,74 +7801,74 @@ msgstr "" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "Porovnat vše" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "Najít kterékoliv" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "" @@ -7854,37 +7935,37 @@ msgstr "

    Nápovědu najdete: User Manual
    " 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/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "Nemůžu nastavit" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "Nastavení není možné změnit dokud neproběhne zpracování všech úloh" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "Bližší informace nejsou dostupné" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "Bližší informace o knihách v tomto zařízení nejsou dostupné" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Chyba převodu" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -7892,36 +7973,36 @@ msgstr "" "

    Nelze převést: %s

    Kniha je chráněna pomocí DRM. " "Před převodem nejprve musíte odstranit DRM pomocí nástroje třetí strany." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Zdroj zakázán" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Prpbíha zpracování úloh. Opravdu chcete program ukončit?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "UPOZORNĚNÍ: Probíhá zpracování úloh." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -7944,6 +8025,9 @@ msgid "" "%s has been updated to version %s. See the new features. Visit the download page?" msgstr "" +"%s povýšilo ma verzi %s.Můžete se podívat na nové vlastnosti. Chcete zobrazit stránku pro " +"stažení?" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:43 msgid "Edit bookmark" @@ -8408,91 +8492,91 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "Klikněte pro zobrazení knih dostupných ve vašem počítači" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "" @@ -8758,48 +8842,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -9186,7 +9270,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -9198,17 +9282,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -9217,19 +9301,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -9239,15 +9323,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9263,39 +9347,39 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" @@ -9595,6 +9679,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -9756,93 +9844,93 @@ msgstr "" msgid "Unknown News Source" msgstr "Neznámý zdroj zpráv" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "\"%s\" zdroj musí obsahovat jméno a heslo." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " od " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Stáhnout zdroje z %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Stahování obálky z %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Nepojmenovaný článek" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Článek stažen: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9854,12 +9942,12 @@ msgstr "Vy" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Naplánováno" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "uživatelský" @@ -11090,6 +11178,17 @@ msgstr "Nestahovat kaskádové styly." #~ msgid "Choose a location for your ebook library." #~ msgstr "Zvolte umístění pro vaši elektronickou knihovnu." +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [možnosti] ISBN\n" +#~ "\n" +#~ "Stáhnout obálku knihy identifikované uvedeným kódém ISBN z LibraryThing.com\n" + #~ msgid "Invalid library location" #~ msgstr "Neplatné umístění knihovny" diff --git a/src/calibre/translations/de.po b/src/calibre/translations/de.po index 09c2e17eda..36dbf8bd84 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: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:13+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-06 12:31+0000\n" +"Last-Translator: MS \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: 2010-06-19 03:48+0000\n" +"X-Launchpad-Export-Date: 2010-07-07 03:37+0000\n" "X-Generator: Launchpad (build Unknown)\n" "Generated-By: pygettext.py 1.5\n" @@ -28,28 +28,29 @@ msgstr "Macht absolut gar nichts" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -72,9 +73,9 @@ msgstr "Macht absolut gar nichts" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -102,49 +103,49 @@ msgstr "Macht absolut gar nichts" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -180,7 +181,7 @@ msgstr "" "allen verlinkten Dateien erstellen. Dieses Plugin läuft immer, wenn sie eine " "HTML-Datei zur Bibliothek hinzufügen." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -188,7 +189,7 @@ msgstr "" "Zeichenkodierung der Eingabe-HTML-Dateien. Üblicherweise ist das: cp1252, " "latin1, iso-8859-1 und utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -198,49 +199,49 @@ msgstr "" "pmlname_img oder images. Dieses Plugin wird immer dann ausgeführt, wenn Sie " "eine PML-Datei zur Bibliothek hinzufügen." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Umschlagbild aus Comic-Dateien extrahieren" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Metadaten aus %s Dateien lesen" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Metadaten von eBooks in RAR-Archiven lesen" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Metadaten aus Büchern in ZIP-Archiven lesen" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Geben Sie die Metadaten in %s-Dateien an" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Geben Sie die Metadaten von %s-Dateien an" @@ -285,7 +286,7 @@ msgstr "" "hilfreich, wenn Sie nichts über das Eingabe-Dokument wissen." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -297,70 +298,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Dieses Profil ist geeignet für das SONY PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Dieses Profil ist geeignet für das SONY PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Dieses Profil ist geeignet für den Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Dieses Profil ist geeignet für Mobipocket-Bücher." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Dieses Profil ist geeignet für den Hanlin V3 und dessen Klone." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Dieses Profil ist geeignet für den Hanlin V5 und dessen Klone." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Dieses Profil ist geeignet für das Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Dieses Profil ist geeignet für den Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Dieses Profil ist geeignet für den Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Dieses Profil ist geeignet für den Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Dieses Profil ist geeignet für den IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Dieses Profil ist geeignet für den IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Dieses Profil ist geeignet für den B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Ausgabe-Profil" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -370,25 +371,25 @@ msgstr "" "hilfreich, wenn Sie ein Dokument zum Lesen an einem Computer oder auf einer " "Reihe von verschiedenen Geräten erstellen wollen." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" "Geeignet für das iPad und ähnliche Geräte mit einer Auflösung von 768 x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Dieses Profil ist geeignet für den Kobo Reader." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Dieses Profil ist geeignet für das SONY PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Dieses Profil ist geeignet für das 5-Zoll JetBook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -396,7 +397,7 @@ msgstr "" "Dieses Profil ist geeignet für die SONY PRS-Reihe. PRS 500/505/700 etc. in " "horizontaler Darstellung. Vor allem für Comics hilfreich." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Dieses Profil ist geeignet für den Amazon Kindle DX." @@ -418,7 +419,7 @@ msgstr "Ausgeschaltene Plugins" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 msgid "Enabled plugins" -msgstr "" +msgstr "Aktivierte Module" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " @@ -476,7 +477,7 @@ msgstr "Gewähltes Plugin ausschalten" msgid "Communicate with Android phones." msgstr "Kommunikation mit Android-Telefonen." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -484,36 +485,47 @@ msgstr "" "Durch Kommata getrennte Liste von Verzeichnissen an die eBooks auf das Gerät " "gesendet werden. Das erste vorhandene wird benutzt" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Kommunikation mit S60-Telefonen." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." -msgstr "Kommunikation mit iBooks über iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "Gerät von Apple entdeckt, starte iTunes, einen Moment bitte..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "Aktualisiere die Liste der Geräte-Metadaten..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "%d von %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "abgeschlossen" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -523,17 +535,7 @@ msgstr "" "Zum Löschen die iBooks App verwenden.\n" "Klicken Sie 'Zeige Details' für eine Liste." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "Einstellungen der Geräte-Treiber" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "Geordnete Liste der Formate, die das Gerät akzeptiert" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -541,18 +543,22 @@ msgstr "" "Einige Umschlagbilder konnten nicht konvertiert werden.\n" "Klicken Sie 'Zeige Details' für eine Liste." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Nachrichten" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Kommunikation mit dem Binatone Readme eBook Reader." @@ -575,7 +581,11 @@ msgstr "Kommunikation mit dem Cybook Gen 3 / Opus eBook Reader." msgid "Communicate with the EB600 eBook reader." msgstr "Kommunikation mit dem EB600 eBook Reader." -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -681,10 +691,44 @@ msgstr "Kommunikation mit dem Kindle 2 eBook Reader." msgid "Communicate with the Kindle DX eBook reader." msgstr "Kommunikation mit dem Kindle DX eBook Reader." -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "Kommunikation mit dem Kobo Reader" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Die Liste der Bücher auf dem Gerät beziehen ..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Bücher vom Gerät entfernen ..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Bücher von der Metadaten-Liste des Geräts entfernen ..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Bücher zur Metadaten-Liste des Geräts hinzufügen ..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Kommunikation mit dem Palm Pre" @@ -693,6 +737,10 @@ msgstr "Kommunikation mit dem Palm Pre" msgid "Communicate with the Booq Avant" msgstr "Kommunikation mit dem Booq Avant" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Kommunikation mit dem Nokia 770 Internet Tablet." @@ -701,6 +749,10 @@ msgstr "Kommunikation mit dem Nokia 770 Internet Tablet." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Kommunikation mit dem Nokia 810 Internet Tablet." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "Der Nook" @@ -729,7 +781,7 @@ msgstr "" "Mit Kommata getrennte Liste von Metadatenfeldern um Büchersammlungen auf dem " "Gerät zu erstellen. Möglichkeiten sind: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "Unbenannt" @@ -750,25 +802,25 @@ msgstr "Kommunikation mit dem Newsmy Reader." msgid "Communicate with the iPapyrus reader." msgstr "Kommunikation mit dem iPapyrus Reader." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "" "Das Laufwerk %s konnte nicht gefunden werden. Versuchen Sie einen Neustart." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "" "Konnte den %s Mount Point nicht finden. Versuchen Sie einen Neustart." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "Das %s-Laufwerk konnte nicht erkannt werden." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "Mount Helper konnte nicht gefunden werden: %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." @@ -776,25 +828,25 @@ msgstr "" "%s Festplatte konnte nicht erkannt werden. Ihr Kernel exportiert " "möglicherweise eine abgelehnte Version von SYSFS." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "Hauptspeicher konnte nicht eingehängt werden (Fehler-Code: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 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:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 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:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 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:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "Nicht genügend freier Speicherplatz auf der Speicherkarte" @@ -802,25 +854,33 @@ msgstr "Nicht genügend freier Speicherplatz auf der Speicherkarte" msgid "Configure Device" msgstr "Gerät konfigurieren" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "Einstellungen der Geräte-Treiber" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Geordnete Liste der Formate, die das Gerät akzeptiert" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "" "Dateien in Unterverzeichnissen speichern soweit das Gerät dies unterstützt" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Metadaten aus Dateien auf dem Gerät lesen" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Vorlage zur Kontrolle wie Bücher gespeichert werden" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Besondere Anpassung" @@ -833,36 +893,12 @@ msgstr "Kommunikation mit einem eBook Reader." msgid "Get device information..." msgstr "Geräte-Information beziehen ..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "Die Liste der Bücher auf dem Gerät beziehen ..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "Bücher ans Gerät übertragen ..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "Bücher zur Metadaten-Liste des Geräts hinzufügen ..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "Bücher vom Gerät entfernen ..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "Bücher von der Metadaten-Liste des Geräts entfernen ..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "Metadaten ans Gerät senden ..." @@ -1697,14 +1733,10 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" -"SVG nicht für Umschlagbilder verwenden. Verwenden Sie diese Einstellung, " -"falls das EPUB auf einem Gerät verwendet wird, das SVG nicht unterstützt, " -"wie z.B. das iPhone oder das JetBook Lite. Ohne diese Einstellung zeigen " -"diese Geräte anstelle eines Umschlagbildes eine leere Seite." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" @@ -1744,7 +1776,7 @@ msgstr "Kein Inhaltsverzeichnis am Anfang des Buches einfügen." msgid "Add Table of Contents to beginning of the book." msgstr "Inhaltsverzeichnis am Anfang des Buches hinzufügen." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1752,7 +1784,7 @@ msgstr "" "Links in HTML-Dateien in der Breite durchlaufen. Normalerweise werden Links " "in die Tiefe durchlaufen." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1762,7 +1794,7 @@ msgstr "" "Darf nicht negativ sein. 0 gibt an, dass keine Links in der ursprünglichen " "HTML-Datei verfolgt werden. Voreinstellung ist %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1774,7 +1806,7 @@ msgstr "" "wenn Sie wissen, was Sie tun, denn es kann verschiedene nervige " "Nebenwirkungen beim Rest des Konvertierungsprozesses zur Folge haben." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1921,7 +1953,7 @@ msgid "Path to output file" msgstr "Pfad zur Zieldatei" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Ausführlicher fortfahren" @@ -2024,88 +2056,86 @@ msgstr "Nichtproportionale Schriftartfamilie einbetten" msgid "Comic" msgstr "Comic" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Titel" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autor(en)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Herausgeber" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Produzent" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Bemerkung" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Etiketten (Tags)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Reihe" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Sprache" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Zeitstempel" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Veröffentlicht" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Rechte" @@ -2240,39 +2270,43 @@ msgstr "Umschlagbild gespeichert unter" msgid "No cover found" msgstr "Kein Umschlagbild gefunden" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 -msgid "Downloads metadata from Douban.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "Herunterladen der Metadaten von Douban.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Metadaten laden" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "Bewertungen" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "Etiketten" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "Beschreibung/Bewertungen" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "Lade %s von %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Lädt Metadaten von Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Lädt Metadaten von isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2280,15 +2314,15 @@ msgstr "" "Zur Verwendung von isbndb.com müssen Sie einen %skostenlosen Account%s " "erstellen und Ihren Zugangsschlüssel unten eingeben." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Lädt soziale Metadaten von amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2313,27 +2347,27 @@ msgstr "" "bei isbndb.com erstellt werden kann.\n" "\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "Die ISBN des Buches, für das Sie Metadaten abrufen möchten." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "Der Autor des gesuchten Buches." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "Der Titel des gesuchten Buches." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "Der Herausgeber des gesuchten Buches." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "LibraryThing.com antwortet nicht. Versuchen Sie es später." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2341,29 +2375,25 @@ msgstr "" "Konnte aufgrund zu hoher Serverlast kein Umschlagbild abrufen. Bitte " "versuchen Sie es später wieder." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " nicht gefunden." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "LibraryThing.com Server Fehler. Versuchen Sie es später." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -"\n" -"%prog [options] ISBN\n" -"\n" -"Umschlagbild des Buches mit der angegebenen ISBN von LibraryThing.com " -"abrufen\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Umschlagbild" @@ -2404,70 +2434,70 @@ msgstr "Alle Artikel" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "Dies ist ein Amazon Topaz-Buch. Es kann nicht verarbeitet werden." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Titelseite" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Inhaltsverzeichnis" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Index" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Glossar" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Danksagung" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Literaturverzeichnis" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Schlussschrift" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Copyright" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Widmung" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epigraph" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Vorwort" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Abbildungsverzeichnis" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Tabellenverzeichnis" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Anmerkungen" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Vorwort" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Haupttext" @@ -3059,219 +3089,223 @@ msgstr "Das Aussehen der Benutzeroberfläche" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Kopiert" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Kopieren" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "In die Zwischenablage kopieren" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Dateien wählen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "Nur Bibliothek verwenden" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "Nur aus der Hauptbibliothek erstellte Benutzeranmerkungen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "Keine Bücher ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "Es sind keine Bücher zum Abrufen von Anmerkungen ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "Füge Benutzeranmerkungen zur Datenbank hinzu" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
    Last Page Read: %d (%d%%)" msgstr "%s
    Letzte gelesene Seite: %d (%d%%)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
    Last Page Read: Location %d (%d%%)" msgstr "%s
    Letzte gelesene Seite: Position %d (%d%%)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
    %s
    " msgstr "Position %d • %s
    %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
    " msgstr "Seite %d • %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
    " msgstr "Position %d • %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "Wie viele leere Bücher?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "Wie viele leere Bücher sollen hinzugefügt werden?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "Lade Bücher auf das Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "EPUB Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "LRF Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "HTML Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "LIT Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "MOBI Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "Topaz Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "Text Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "PDF Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "Comics" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "Archive" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "Unterstützte Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "Einige Bücher zusammenfügen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" "Es wurden einige Duplikate gefunden und mit den folgenden, schon vorhandenen " "Büchern zusammengefügt:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "Lesen der Metadaten schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "Lesen der Metadaten schlug fehl bei folgenden" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" -msgstr "" +msgstr "Zur Bibliothek hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "Kein Buch ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "Löschen nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "Zu löschende Formate auswählen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "Nicht zu löschende Formate auswählen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" -msgstr "" +msgstr "Hauptspeicher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "Speicherkarte A" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "Speicherkarte B" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "Lösche Bücher vom Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -3279,7 +3313,7 @@ msgstr "" "Die gewählten Bücher werden dauerhaft gelöscht und die Dateien vom " "Computer entfernt. Sin Sie sicher?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" @@ -3287,61 +3321,61 @@ msgstr "" "Die gewählten Bücher werden von ihrem Gerät dauerhaft gelöscht. Sind " "Sie sicher?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "Konnte Metadaten nicht laden" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "soziale Metadaten" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "Umschlagbilder" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "Metadaten" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "Lade %s für %d Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "Das Laden der Metadaten schlug teilweise fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 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/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "Laden der Metadaten schlug fehl:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Fehler" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "Kann Metadaten nicht bearbeiten" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "Konnte Bücher nicht zusammenfügen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "Es müssen wenigstens zwei Bücher zum Zusammenfügen ausgewählt werden" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

    The second and subsequently selected " @@ -3353,7 +3387,7 @@ msgstr "" "Bücher werden nicht gelöscht oder verändert.

    Zum Fortfahren bitte " "bestätigen." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

    After merger the second and " @@ -3369,7 +3403,7 @@ msgstr "" "zweiten und den danach gewählten Bücher werden unwiderruflich von Ihrem " "Rechner gelöscht.

    Wollen Sie wirklich fortfahren?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" @@ -3377,94 +3411,94 @@ msgstr "" "Sie versuchen mehr als 5 Bücher zusammenzufügen. Wollen Sie damit " "wirklich fortfahren?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "Speichern auf Festplatte nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "Zielverzeichnis auswählen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "Fehler während des Speicherns" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "Es gab einen Fehler während des Speicherns." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "Konnte einige Bücher nicht speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 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/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "Keine Bücher ausgewählt, für die ein Katalog erstellt werden soll" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "Erstelle %s Katalog..." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "Keine Bücher gefunden" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "Keine Bücher im Katalog. Bitte ausgeschlossene Etiketten prüfen." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "Katalog erstellt." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "Katalog-Verzeichnis exportieren" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "Wählen Sie das Ziel für %s.%s" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "Rufe Nachrichten ab von " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr " abgerufen." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "Konvertierung nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "Starte Konvertierung von %d Büchern" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "Ansehen nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "Format zur Vorschau wählen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "Mehrere Bücher ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3476,11 +3510,11 @@ 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/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "Konnte Verzeichnis nicht öffnen" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "%s hat keine verfügbaren Formate." @@ -3488,36 +3522,36 @@ msgstr "%s hat keine verfügbaren Formate." msgid "Searching in" msgstr "Suche in" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Füge hinzu..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Suche in allen Unterverzeichnissen..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Verzeichnis Fehler" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 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:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Keine Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Hinzugefügt" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "Hinzufügen schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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." @@ -3526,11 +3560,11 @@ msgstr "" "Versuchen Sie Calibre neu zu starten und fügen Sie die Bücher in kleineren " "Mengen hinzu, bis Sie das verantwortliche Buch finden." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Duplikate gefunden!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -3538,15 +3572,15 @@ msgstr "" "Es gibt schon Bücher mit dem selben Titel wie die folgenden in der " "Datenbank. Trotzdem hinzufügen?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "Füge Duplikate hinzu..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Speichere..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Gespeichert" @@ -3644,23 +3678,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3707,55 +3741,56 @@ msgstr "" "&Mehrere Bücher pro Verzeichnis, wobei jede Buch-Datei ein anderes Buch " "darstellt" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Pfad" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formate" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "Sammlungen" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "Zum Öffnen klicken" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Keine" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3804,7 +3839,7 @@ msgstr "Ausgabe" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3814,7 +3849,7 @@ msgstr "Ausgabe" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3836,8 +3871,8 @@ msgstr "eBook Einstellungen" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Katalog" @@ -4312,77 +4347,77 @@ msgstr "" "Metadaten eingeben. Die Ausgabe-Datei wird möglichst viel dieser Metadaten " "enthalten." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Wählen Sie das Umschlagbild für " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Lesen nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Fehler beim Lesen der Datei" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " ist kein gültiges Bild" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Umschlagbild" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Um&schlagbild der Quelldatei verwenden" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "&Umschlagbild ändern:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "Um&schlagbild der Quelldatei verwenden" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Titel: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "Titel dieses Buches ändern" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Autor(en): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "So&rtierung nach Autor:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" @@ -4390,20 +4425,20 @@ msgstr "" "Autor dieses Buches ändern. Mehrere Autoren sollten durch Kommata getrennt " "werden" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Herausgeber: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "&Etiketten: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." @@ -4412,23 +4447,23 @@ msgstr "" "Büchern.

    Sie können für Etiketten durch Kommata getrennte Wörter " "oder Sätze verwenden." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Reihen:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "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:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Buch " @@ -4513,12 +4548,12 @@ msgid "PDB Input" msgstr "PDB-Eingabe" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Jede Zei&le als Absatz behandeln" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "Druck-Formatierung übernehmen" @@ -4649,12 +4684,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Ungültiger regulärer Ausdruck: %s" @@ -4742,11 +4777,11 @@ msgstr "&Filter für Inhaltsverzeichnis:" msgid "TXT Input" msgstr "TXT Input" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "Prozess verwendet Markdown" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit Markdown." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" "Kein Inhaltsverzeichnis in den Ausgabetext bei der Verwendung von Markdown " "einfügen." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "Leer&zeichen beibehalten" @@ -4891,6 +4926,7 @@ msgstr "Umschlagbilder durchsuchen" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4919,128 +4955,145 @@ msgstr "Stern(e)" msgid "Unrated" msgstr "Unbewertet" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "Bücher in dieser Reihe automatisch nummerieren" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "Alle Etiketten entfernen" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "Etiketten hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "Etiketten entfernen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "Keine weiteren Informationen verfügbar." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "Gerät ist nicht mehr verbunden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "Geräteinformationen erstellen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 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:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "Anmerkungen vom Gerät laden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "Metadaten zum Gerät senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "%d Bücher auf das Gerät laden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "Bücher vom Gerät löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "Bücher vom Gerät herunterladen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "Buch auf dem Gerät ansehen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "Geben Sie die voreingestellte Übertragungsart an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "eMail an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr " und aus der Bibliothek löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "An Hauptspeicher senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "An Speicherkarte A senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "An Speicherkarte B senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "Hauptspeicher" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "Übertragen und aus der Bibliothek löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "Angegebenes Format übertragen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "Mit Verzeichnis verbinden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" -msgstr "Von Verzeichnis trennen" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "Mit iTunes verbinden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "Anmerkungen abrufen (experimentell)" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "Fehler bei der Kommunikation mit dem Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "Verzeichnis wählen, das als Gerät geöffnet werden soll" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "Fehlgeschlagen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "Fehler in der Kommunikation zum Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5048,129 +5101,129 @@ 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "Gerät: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr " gefunden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "Angeschlossen: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "zum Übertragen ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 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:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "Kein Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "Übertragung schlug fehl: Kein Gerät verbunden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Keine Speicherkarte" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 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:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "eBook:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "Im Anhang finden Sie das eBook" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "von" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "im %s Format." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Sende eMail an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "Keine geeigneten Formate" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 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:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 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:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "Senden der Bücher schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "Senden der folgenden Bücher schlug fehl:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "Per eMail versendet:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "Nachrichten:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "Im Anhang ist" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Nachrichten senden an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 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:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Sende Kataloge ans Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "Sende Nachrichten an das Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "Sende Bücher an das Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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." @@ -5179,11 +5232,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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "Gerätespeicher voll" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" @@ -5278,15 +5331,15 @@ msgstr "&Profil:" msgid "Edit Comments" msgstr "Kommentare verändern" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "%(plugin_type)s %(plugins)s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "Plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " @@ -5294,23 +5347,23 @@ msgstr "" "\n" "Anpassung: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Konvertierung" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Allgemein" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Bedienungsoberfläche" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Hinzufügen/Speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" @@ -5318,11 +5371,11 @@ msgstr "" "eMail\n" "Versand" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Erweitert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -5330,23 +5383,23 @@ msgstr "" "Content\n" "Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Automatisches Übertragen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "eMail" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "Formate für eMail. Das erste passende Format wird versendet." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." @@ -5355,23 +5408,23 @@ msgstr "" "Adresse versendet (vorausgesetzt sie entspricht einem der angegebenen " "Formate)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "Neue eMail-Adresse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "Breit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "Schmal" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "System-Port ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " @@ -5382,133 +5435,133 @@ msgstr "" "dass der Server auf diesem Port läuft. Sie sind auf der sicheren Seite, wenn " "Sie eine Port Zahl größer als 1024 wählen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "Die Installation der Befehlszeilen-Tools schlug fehl." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "Kommandozeilen-Tools installiert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "Kommandozeilen-Tools installiert in" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" "Wenn Sie Calibre.app verschieben, müssen Sie die Befehlszeilen-Tools neu " "installieren." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "Kein gültiger Plugin-Pfad" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s ist kein gültiger Plugin-Pfad" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Plugin wählen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Plugin kann nicht ausgeschaltet werden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "Das Plugin: %s kann nicht ausgeschaltet werden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Plugin nicht anpassbar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Plugin: %s bedarf keines Anpassens" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "Anpassen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "Kann festinstalliertes Plugin nicht entfernen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" " kann nicht entfernt werden, da es ein festinstalliertes Plugin ist. " "Versuchen Sie, es auszuschalten." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "Sie müssen eine Spalte auswählen, um sie zu löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "Die gewählte Spalte ist keine benutzerdefinierte Spalte" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "Sicher?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "Wollen Sie wirklich die Spalte %s und ihre gesamten Daten löschen?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Fehler Log:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "Zugriffs-Protokolldatei:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "Content Server konnte nicht gestartet werden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "Speicherort für Bücher wählen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Ungültige Größe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" "Die Größe %s ist ungültig. Sie muss der Form BreitexHöhe entsprechen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Ortsangabe der Datenbank ungültig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Ortsangabe der Datenbank ungültig " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "
    Muss ein Verzeichnis sein." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "Ortsangabe der Datenbank ungültig.
    Speichern nicht möglich " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "Neustart erforderlich" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." @@ -5516,19 +5569,19 @@ msgstr "" "Die gewählten Änderungen erfordern einen Neustart von Calibre. Bitte starten " "Sie baldmöglichst neu." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "Überprüfe Vollständigkeit der Datenbank" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "Überprüfung der Vollständigkeit der Datenbank schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "Einige Inkonsistenzen gefunden." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -5540,11 +5593,11 @@ msgstr "" "Sie sollten diese manuell überprüfen. Dies kann passieren, wenn Sie die " "Dateien direkt im Bibliotheksverzeichnis verändern." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "TabWidget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " @@ -5554,11 +5607,11 @@ msgstr "" "hinzufügen, ausliest. Calibre kann entweder aus dem Inhalt oder aus dem " "Dateinamen Metadaten auslesen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "Metadaten nur aus dem Date&inamen lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." @@ -5566,30 +5619,22 @@ msgstr "" "Vorname und Nachname des Autors vertauschen. Dies betrifft nur aus " "Dateinamen gelesene Metadaten." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "Vorname und Nachname des Autors vertau&schen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " "punctuation, case, etc. Author match is exact." msgstr "" -"Wenn ein bestehendes Buch mit dem gleichen Titel und Autor gefunden wird, " -"dass aber nicht das Format besitzt welches hinzufgefügt werden soll, so wird " -"dem bestehenden Buch das neue Format hinzugefügt anstatt einen neuen Eintrag " -"zu erstellen. Wenn das bestehende Buch bereits das Format hat, wird es " -"einfach ignoriert.\n" -"Der Titelvergleich ignoriert führende unbestimmte Artikel wie (\"der\", " -"\"ein\", \"eine\"), Punktierung, Groß- und Kleinschreibung, usw. Der " -"Autorenvergleich ist exakt." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" @@ -5597,15 +5642,15 @@ msgstr "" "Falls Bücher mit ähnlichen Titeln und Autoren gefunden werden, die neuen " "Dateien automatisch mit diesen zusa&mmenfügen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "Metadaten aus dem Dateinamen &konfigurieren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "Bücher &hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" @@ -5613,43 +5658,60 @@ msgstr "" "Hier können Sie einstellen, wie Calibre Ihre Bücher speichert, wenn Sie die " "Schaltfläche Auf Festplatte speichern klicken:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Ums&chlagbild getrennt speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "&Metadaten in gespeicherten Kopien aktualisieren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "Metadaten in &OPF Datei speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "Nicht-Englische Zeichen in &Englische Entsprechungen umwandeln" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "&Daten formatieren als:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "Datei&formate speichern:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Leerzeichen mit &Unterstrich ersetzen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Pfade in K&leinschreibung umwandeln" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "Bücher &speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " @@ -5660,18 +5722,18 @@ msgstr "" "einzelne Geräte überschrieben werden, indem die Geräte-Interface-Plugins in " "\"Einstellungen -> Plugins\" angepasst werden." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "An das Gerät sen&den" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Einstellungen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -5680,29 +5742,29 @@ msgstr "" "sortiert gespeichert und die Metadaten werden in der Datei metadata.db " "gespeichert)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Zu einem neuen Ort der Datenbank wechseln" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Benachrichtigung anzeigen, wenn &neue Version verfügbar ist" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" "&Soziale Metadaten (Etikettierung/Bewertung/etc.) laden als Voreinstellung" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" "Autor und Titel standardmäßig überschreiben, wenn Metadaten geholt werden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "Voreinstellung für Zei&tüberschreitung bei Netzwerkverbindungen:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -5710,148 +5772,156 @@ msgstr "" "Voreinstellung der Zeitüberschreitung für Netzwerkabrufe festsetzen (Gilt " "immer dann, wenn aus dem Internet Informationen abgerufen werden sollen)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " Sekunden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Sprache wäh&len (erfordert Neustart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Normal" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Hoch" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Niedrig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "Auftrags&priorität:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Bev&orzugtes Ausgabe-Format:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Bevorzugte Reihenfolge des E&ingabe-Formats:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "&Römische Ziffern für Reihennummerierung verwenden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" "Symbol im Sys&tembereich der Kontrollleiste aktivieren (erfordert Neustart)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Be&nachrichtigungen im Systembereich der Kontrollleiste anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "Spla&sh-Screen beim Starten anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "Zeige Cover-Ansicht in einem eigenen Fenster (erfordert Neustart)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "Suchen während der Eingabe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "Geladene &Nachrichten automatisch an das Gerät senden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" "Nachrichten nach der automatischen Übertragung auf das Gerät aus der " "Bibliothek &löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" "A&nzahl der anzuzeigenden Umschlagbilder in der Cover-Ansicht (erfordert " "Neustart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Symbolleiste" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Groß" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Mittel" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Klein" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "&Größe der Schaltflächen in der Symbolleiste" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "Zeige &Text in Schaltflächen der Symbolleiste" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "Si&chtbare Spalten in Bibliothek-Ansicht wählen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "Benutzerdefinierte Spalte entfernen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "Benutzerdefinierte Spalte hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "Einstellungen einer benutzerdefinierten Spalte ändern" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "Internen &Viewer verwenden für:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "Aussehen der Benutzeroberf&läche (Neustart erforderlich):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "Eine eMail-Adresse hinzufügen, an die die Bücher gesendet werden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "eM&ail hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Als Voreinstellung verwenden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "eMail entfe&rnen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" @@ -5861,35 +5931,35 @@ msgstr "" "eMails werden automatisch für geladene Nachrichten an alle eMail-Adressen " "mit aktiviertem Auto-Send verschickt." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" "&Maximale Anzahl der Arbeitsprozesse in der Warteschlange (erfordert " "Neustart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "Vollständigkeit der &Datenbank überprüfen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "Kommandozeilen-Tools &installieren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "&Calibre Einstellungsverzeichnis öffnen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" "Die maximale Anzahl gleichzeitiger Aufträge auf die Anzahl der &CPU-Kerne " "beschränken." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "Fehlersuche bei &der Geräteerkennung" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " @@ -5899,25 +5969,25 @@ msgstr "" "von überall aus mit Hilfe eines Browsers auf Ihre Büchersammlung zugreifen " "können. Einstellungsänderungen erfolgen erst nach einem Neustart des Servers." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "Server &Port:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "Ben&utzername:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "&Passwort:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -5925,7 +5995,7 @@ msgstr "" "Wenn Sie das Kennwort leer lassen, kann jeder auf Ihre Büchersammlung über " "das Webinterface zugreifen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -5933,45 +6003,45 @@ msgstr "" "Maximale Größe (BreitexHöhe) der angezeigten Umschlagbilder. Größere " "Umschlagbilder werden verkleinert. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "Maximale Ums&chlagbild-Größe:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "Pa&sswort anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "Maximale &ODPS Einträge pro Anfrage:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "Max. OPDS &ungeordnete Elemente:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "Server &starten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "Server st&oppen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "Server &testen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "Server &automatisch beim Starten hochfahren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Server Logs ansehen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5989,7 +6059,7 @@ msgstr "" "vollständige Servername oder die IP-Adresse des Rechners sein, auf dem " "Calibre läuft." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." @@ -5997,27 +6067,27 @@ msgstr "" "Hier können Sie das Verhalten von Calibrie anpassen, indem sie festlegen, " "welche Plugins verwendet werden." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Plugin &ein-/ausschalten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "Plugin &anpassen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "Plugin entfe&rnen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Neues Plugin hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "&Plugin-Datei:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&Hinzufügen" @@ -6054,10 +6124,10 @@ msgid "Number" msgstr "Nummer" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Datum" @@ -6087,39 +6157,43 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "Langer Text, wie Kommentare, nicht im Etiketten-Browser angezeigt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "Fließkommazahlen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "Ganzzahlen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "Bewertungen, angezeigt durch Sterne" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "Ja/Nein" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "Keine Spalte ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "Es wurde keine Spalte ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "Die gewählte Spalte ist keine benutzerdefinierte Spalte" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "Es wurde kein Suchname angegeben" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" @@ -6127,19 +6201,19 @@ msgstr "" "Die Beschriftung darf nur Buchstaben, Ziffern und Unterstriche enthalten und " "muss mit einem Buchstaben beginnen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "Es wurde keine Spaltenüberschrift angegeben" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "Der Suchname %s wird schon verwendet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "Die Überschrift %s wird schon verwendet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -6272,13 +6346,13 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "Format" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 msgid "Delete from device" -msgstr "" +msgstr "Vom Gerät löschen" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author sort" @@ -6286,43 +6360,43 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 msgid "Manage authors" -msgstr "" +msgstr "Autoren verwalten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Sortierung nach Autor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "Finde Metadaten..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "Konnte Metadaten nicht finden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" "Der Download der Metadaten scheint zum Stillstand gekommen zu sein. " "Versuchen Sie es später erneut." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Warnung" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "Konnte Metadaten nicht abrufen von:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "Keine Metadaten gefunden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -6412,7 +6486,7 @@ msgid "Author s&ort: " msgstr "S&ortierung nach Autor: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -6421,14 +6495,14 @@ msgstr "" "Dickens\" zum Beispiel als \"Dickens, Charles\"." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 -#: /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:372 msgid "&Rating:" msgstr "&Bewertung:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "Bewertung dieses Buches: 0-5 Sterne" @@ -6437,7 +6511,7 @@ msgid "No change" msgstr "Keine Änderung" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " Sterne" @@ -6447,8 +6521,8 @@ msgstr "Etiketten hinzufü&gen: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "Etiketten-Editor öffnen" @@ -6482,10 +6556,6 @@ msgstr "" "Falls Sie zuerst Buch A und dann Buch B wählen,\n" "erhält Buch A Reihennummer 1 und Buch B Reihennummer 2." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "Bücher in dieser Reihe automatisch nummerieren" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -6504,214 +6574,214 @@ msgstr "" "Ge&speicherte Konvertierungs-Einstellungen für die gewählten Bücher löschen" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "&Basis-Metadaten" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "Ben&utzerdefinierte Metadaten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "Kein gültiges Bild." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "Formate wählen für " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "Zugriff verweigert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "Sie haben nicht die Berechtigung, die folgenden Dateien zu lesen:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "Kein Format gewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "Konnte Metadaten nicht lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 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:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "Konnte Umschlagbild nicht lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 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:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 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:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 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:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "Diese ISBN ist gültig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "Diese ISBN ist ungültig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "Kann Etiketteneditor nicht verwenden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" "Der Etiketteneditor kann nicht verwendet werden, falls sie die Etiketten " "verändert haben" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Lade Umschlagbild..." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "Kann kein Umschlagbild abrufen" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
    " msgstr "Konnte kein Umschlagbild abrufen.
    " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "Der Download timed out." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Falsches Umschlagbild" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 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:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "Es sind Fehler aufgetreten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "Während des Ladens von sozialen Metadaten sind Fehler aufgetreten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "Konnte Metadaten nicht abrufen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "Zugriff verweigert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Meta-Informationen bearbeiten" -#: /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:362 msgid "Meta information" msgstr "Meta-Informationen" -#: /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:365 msgid "Swap the author and title" msgstr "Tausche Autor und Titel" -#: /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:368 msgid "Author S&ort: " msgstr "S&ortierung nach Autor: " -#: /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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 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:389 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" msgstr "Veröffentlichun&g:" -#: /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:390 msgid "dd MMM yyyy" msgstr "TT MMM YYYY" -#: /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:391 msgid "&Date:" msgstr "&Datum:" -#: /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:392 msgid "&Comments" msgstr "&Bemerkungen" -#: /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:393 msgid "&Fetch metadata from server" msgstr "Metadaten vom Server abru&fen" -#: /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:394 msgid "Available Formats" msgstr "Verfügbare Formate" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 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:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 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:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 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:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 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:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "Umschlagbild auf Voreinstellung zurücksetzen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Ums&chlagbild laden" @@ -7081,7 +7151,7 @@ msgid "Select the content kind of the new category" msgstr "Art des Inhalts der neuen Kategorie auswählen" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "Sind Sie sicher?" @@ -7139,44 +7209,36 @@ msgstr "" "Etikett zu den verfügbaren Etiketten hinzufügen und dem aktuellen Buch " "zuweisen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "Eintrag ist leer" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" "Ein Element kann nicht auf nichts eingestellt werden. Löschen Sie es " "stattdessen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "Element wird schon verwendet" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "Das Element %s wird schon verwendet." - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "Kein Eintrag ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" "Sie müssen ein Element aus der Liste der verfügbaren Elemente wählen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "Keine Einträge ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "Sie müssen wenigstens eines der Elemente aus der Liste auswählen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "Sind Sie sicher, dass Sie die folgenden Elemente löschen wollen?" @@ -7479,11 +7541,11 @@ msgstr "Regulärer Ausdruck (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "Kein Treffer" @@ -7535,31 +7597,31 @@ msgstr "Metadaten auf einmal bearbeiten" msgid "Download metadata and covers" msgstr "Metadaten und Umschlagbilder laden" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "Nur Metadaten laden" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "Nur Umschlagbilder laden" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "Nur soziale Metadaten laden" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "In das zuerst gewählte Buch zusammenführen - andere löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "In das zuerst gewählte Buch zusammenführen - andere behalten" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "Bücher aus einem einzelnen Verzeichnis hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -7568,7 +7630,7 @@ msgstr "" "Buch pro Verzeichnis, jede eBook Datei im Verzeichnis ist dasselbe Buch in " "verschiedenen Formaten)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -7576,93 +7638,99 @@ 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "Leeres Buch hinzufügen. (Bucheintrag ohne Formate)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Auf Festplatte speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "Auf Festplatte in ein einziges Verzeichnis speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "Nur das %s Format auf Festplatte speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" "Dur das %s Format in ein einzelnes Verzeichnis auf der Festplatte speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Vorschau" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "Spezielles Format ansehen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "Gewählte Bücher entfernen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "Dateien des angegebenen Formates der gewählten Bücher entfernen..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "Alle Formate der gewählten Bücher entfernen, außer..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "Umschlagbilder der gewählten Bücher entfernen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" -msgstr "" +msgstr "Passende Bücher vom Gerät löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "Einzeln konvertieren" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Auf einmal konvertieren" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "Erstelle Katalog der Bücher in der Calibre Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "Willkommens-Assistenten ausführen" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "Ähnliche Bücher..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "Cover-Browser" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "Etiketten-Browser" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "Buchdetails" @@ -7733,42 +7801,42 @@ msgstr "N" msgid "Y" msgstr "J" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "Auf dem Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Größe (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Bewertung" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Buch %s von %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "Der Such-Name ist \"{0}\"" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "In der Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "Größe" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "Zum Löschen ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "Doppelklick ermöglicht Bearbeitung

    " @@ -7812,11 +7880,11 @@ msgstr "Spalte anzeigen" msgid "Restore default layout" msgstr "Voreingestelltes Layout wiederherstellen" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Das ist nicht gestattet" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7919,51 +7987,51 @@ msgstr "Nicht nach Updates suchen" msgid "Calibre Library" msgstr "Calibre Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "Wählen Sie einen Ort für Ihre Calibre eBook Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "Das Erstellen der Bibliothek schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "Erstellen der Calibre Bibliothek schlug fehl in: %r." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "Wählen Sie einen Ort für Ihre neue Calibre eBook Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "Starten der Benutzeroberfläche..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "Reparatur schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" "Die Reparatur der Datenbank schlug fehl. Es erfolgt ein Start mit einer " "neuen, leeren Bibliothek." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Schlechter Datenbank Standort" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "Ungültiger Datenbank-Ort %r. Calibre beendet sich jetzt." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "Beschädigte Datenbank" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " @@ -7973,54 +8041,54 @@ msgstr "" "es automatisch zu reparieren? Wenn Sie Nein sagen, wird eine neue, leere " "Calibre Bibliothek erstellt werden." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" "Repariere Datenbank. Dies kann für eine große Büchersammlung einige Zeit " "dauern" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" "Ungültiger Datenbank-Ort %r. Starte mit einer neuen, leeren Calibre " "Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "Starte %s: Lade Bücher..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 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:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "Start nicht möglich " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s ist schon gestartet." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 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:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "oberen rechten Bereich des Bildschirms." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "unteren rechten Bereich des Bildschirms." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "Versuchen Sie Ihren Rechner neu zu starten." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "Versuche Sie die Datei zu löschen" @@ -8208,20 +8276,20 @@ 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:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Suche" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "Die gewählte Suche wird dauerhaft gelöscht. Sind Sie sicher?" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "Suche (Zur erweiterten Suche die Schaltfläche links klicken)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "Gespeicherte Suchergebnisse" @@ -8297,74 +8365,74 @@ msgstr "Löschen" msgid "&Alternate shortcut:" msgstr "&Alternatives Tastenkürzel:" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "Kategorie %s ausblenden" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "Kategorie anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "Alle Kategorien anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "Gespeicherte Suchen verwalten" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "Benutzer-Kategorien verwalten" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "Suchergebnisse" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "Such-Name duplizieren" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "Der gespeicherte Such-Name %s wird schon verwendet." -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" -msgstr "" +msgstr "Nach Bewertungsdurchschnitt sortieren" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "Übereinstimmung mit allen" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "Übereinstimmung mit irgendeinem" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "Ben&utzer-Kategorien verwalten" @@ -8436,38 +8504,38 @@ 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/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "Calibre Quick-Start-Guide" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "Konfiguration nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 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/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "Konfiguration erst nach einem Neustart von Calibre möglich." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "Es sind keine genaueren Informationen verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 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/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Konvertierungsfehler" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -8476,15 +8544,15 @@ 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/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Downloadschema ausgeschalten" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "Misslungen" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 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." @@ -8493,12 +8561,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/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 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/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" @@ -8509,11 +8577,11 @@ msgstr "" "verursachen.
    \n" " Sind Sie sicher, dass sie beenden möchten?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "WARNUNG: Aktive Aufträge" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -9016,15 +9084,15 @@ msgstr "Shift+F3" msgid "Print eBook" msgstr "eBook drucken" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "Bild kopieren" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "Bild einfügen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -9034,7 +9102,7 @@ msgstr "" "%d\n" "Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" @@ -9044,7 +9112,7 @@ msgstr "" "%s\n" "verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" @@ -9054,7 +9122,7 @@ msgstr "" "%s\n" "verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" @@ -9064,58 +9132,58 @@ msgstr "" "%s\n" "verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 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:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 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:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 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:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 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:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "Bücher finden sich in" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "Groß-/Kleinschreibung ändern" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "Großschreibung" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "Kleinschreibung" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "Groß-/Kleinschreibung vertauschen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "Wortanfänge groß schreiben" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "Zur Größenänderung ziehen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "Anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "Ausblenden" @@ -9427,48 +9495,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "&Inhalt-Server einschalten" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "heute" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "gestern" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "in diesem Monat" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "vor Tagen" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "nein" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "nicht ausgewählt" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "ausgewählt" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "ja" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "leer" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "leer" @@ -10008,7 +10076,7 @@ msgstr "Detaillierte Ausgabeinformation anzeigen. Hilfreich zur Fehlersuche." msgid "Error: You must specify a catalog output file" msgstr "Fehler: Sie müssen eine Katalog-Ausgabedatei angeben" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -10030,7 +10098,7 @@ msgstr "" " Befehls.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." @@ -10038,11 +10106,11 @@ msgstr "" "Wenn die Spalte mehrere Werte speichert, sollen die angegebenen Werte zu den " "bestehenden hinzugefügt werden, anstatt sie zu ersetzen." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "Fehler: Sie müssen einen Feldnamen, eine ID und einen Wert angeben" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -10057,20 +10125,20 @@ msgstr "" "Spaltenbeschriftung und IDs.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "Details jeder Spalte anzeigen." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" "Es werden alle Daten gelöscht in der Spalte: %r. Sind Sie sicher (j/n)? " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "j" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -10087,15 +10155,15 @@ msgstr "" " Spalten mit dem custom_columns Befehl anzeigen lassen.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "Nicht nach einer Bestätigung fragen" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "Fehler: Sie müssen eine Spaltenbeschriftung angeben" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -10117,41 +10185,41 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/database2.py:70 msgid "%sAverage rating is %3.1f" -msgstr "" +msgstr "%sdie durchschnittliche Bewertung ist %3.1f" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "Haupt" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "Karte A" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "Karte B" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "

    Migriere alte Datenbank zu eBook Bibliothek in %s

    " -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "Kopiere %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "Komprimiere Datenbank" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "Überprüfe SQL Vollständigkeit..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "Überprüfe fehlende Dateien." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "Überprüfte ID" @@ -10498,6 +10566,10 @@ msgstr "Liste der benannten gespeicherten Suchen" msgid "User-created tag browser categories" msgstr "Benutzererstellte Etiketten-Browser Kategorieen" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "Warte..." @@ -10568,7 +10640,7 @@ msgstr "Englisch (Pakistan)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 msgid "English (Israel)" -msgstr "" +msgstr "Englisch (Israel)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 msgid "English (Singapore)" @@ -10665,89 +10737,89 @@ msgstr "" msgid "Unknown News Source" msgstr "Nachrichtenquelle unbekannt" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" "Das \"%s\" Downloadschema benötigt einen Benutzernamen und ein Passwort." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Download beendet" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "Der Download der folgenden Artikel schlug fehl:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "Der Download von Teilen der folgenden Artikel schlug fehl:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " von " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "\tFehlgeschlagene Verknüpfungen:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" "Konnte Artikel nicht abrufen. Mit -vv starten, um den Grund dafür zu sehen" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "Rufe Feeds ab..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "Feeds der Index-Seite erhalten" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Umschlagbild versuchen heruterzuladen ..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "Erstelle Impressum..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "Download von [%d Thread(s)] starten ..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Feeds wurden nach %s heruntergeladen" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "Umschlagbild konnte nicht heruntergeladen werden: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Umschlagbild von %s herunterladen" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "Impressumskopie geladen" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Artikel ohne Titel" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Artikel heruntergeladen: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "Herunterladen der Artikel schlug fehl: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "Feed abrufen" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." @@ -10755,7 +10827,7 @@ msgstr "" "Login fehlgeschlagen, überprüfen Sie ihren Benutzername und Passwort für den " "calibre Magazin Service." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -10770,12 +10842,12 @@ msgstr "Sie" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Geplant" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "Angepasst" @@ -11164,6 +11236,18 @@ msgstr "CSS-Stylesheets nicht herunterladen." #~ msgid "Usage:" #~ msgstr "Benutzung:" +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Umschlagbild des Buches mit der angegebenen ISBN von LibraryThing.com " +#~ "abrufen\n" + #~ msgid "Usage: %s file.lit" #~ msgstr "Benutzung: %s dateiname.lit" @@ -13275,6 +13359,24 @@ msgstr "CSS-Stylesheets nicht herunterladen." #~ msgid "dummy option until real options are determined." #~ msgstr "Dummy Einstellung bis echte Einstellungen bestimmt werden." +#~ msgid "" +#~ "If an existing book with a similar title and author is found that does not " +#~ "have the format being added, the format is added \n" +#~ "to the existing book, instead of creating a new entry. If the existing book " +#~ "already has the format, then it is silently ignored.\n" +#~ "\n" +#~ "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " +#~ "punctuation, case, etc. Author match is exact." +#~ msgstr "" +#~ "Wenn ein bestehendes Buch mit dem gleichen Titel und Autor gefunden wird, " +#~ "dass aber nicht das Format besitzt welches hinzufgefügt werden soll, so wird " +#~ "dem bestehenden Buch das neue Format hinzugefügt anstatt einen neuen Eintrag " +#~ "zu erstellen. Wenn das bestehende Buch bereits das Format hat, wird es " +#~ "einfach ignoriert.\n" +#~ "Der Titelvergleich ignoriert führende unbestimmte Artikel wie (\"der\", " +#~ "\"ein\", \"eine\"), Punktierung, Groß- und Kleinschreibung, usw. Der " +#~ "Autorenvergleich ist exakt." + #~ msgid "left" #~ msgstr "links" @@ -13290,6 +13392,17 @@ msgstr "CSS-Stylesheets nicht herunterladen." #~ msgid "Editing meta information for %d books" #~ msgstr "Bearbeite Metainformationen für %d Bücher" +#~ msgid "" +#~ "Do not use SVG for the book cover. Use this option if your EPUB is going to " +#~ "be used ona device that does not support SVG, like the iPhone or the " +#~ "JetBook Lite. Without this option, such devices will display the cover as a " +#~ "blank page." +#~ msgstr "" +#~ "SVG nicht für Umschlagbilder verwenden. Verwenden Sie diese Einstellung, " +#~ "falls das EPUB auf einem Gerät verwendet wird, das SVG nicht unterstützt, " +#~ "wie z.B. das iPhone oder das JetBook Lite. Ohne diese Einstellung zeigen " +#~ "diese Geräte anstelle eines Umschlagbildes eine leere Seite." + #~ msgid "Merge books" #~ msgstr "Bücher zusammenfügen" @@ -13305,9 +13418,21 @@ msgstr "CSS-Stylesheets nicht herunterladen." #~ msgid "Failed to create calibre library at: %r. Aborting." #~ msgstr "Das Erstellen der Bibliothek schlug fehl in: %r. Abbruch." +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Kommunikation mit iBooks über iTunes." + +#~ msgid "Disconnect from folder" +#~ msgstr "Von Verzeichnis trennen" + #~ msgid "Rename" #~ msgstr "Umbenennen" +#~ msgid "Item already used" +#~ msgstr "Element wird schon verwendet" + +#~ msgid "The item %s is already used." +#~ msgstr "Das Element %s wird schon verwendet." + #~ msgid "Side bar" #~ msgstr "Seitenleiste" diff --git a/src/calibre/translations/es.po b/src/calibre/translations/es.po index b185ba107c..bf0431e899 100644 --- a/src/calibre/translations/es.po +++ b/src/calibre/translations/es.po @@ -10,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:14+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-06 14:21+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: 2010-06-19 03:49+0000\n" +"X-Launchpad-Export-Date: 2010-07-07 03:38+0000\n" "X-Generator: Launchpad (build Unknown)\n" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -28,7 +28,7 @@ msgstr "" "Este perfil está pensado para la línea PRS de SONY. Los 500/505/700, etc., " "en modo apaisado. Útil principalmente para cómics." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Este perfil está pensado para el Kindle DX de Amazon." @@ -46,28 +46,29 @@ msgstr "No hace absolutamente nada" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -90,9 +91,9 @@ msgstr "No hace absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -120,49 +121,49 @@ msgstr "No hace absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -198,7 +199,7 @@ msgstr "" "con los archivos enlazados. Este complemento se ejecuta cada vez que se " "añade un archivo HTML a la biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -206,7 +207,7 @@ msgstr "" "Codificación de los archivos HTML de entrada. Las opciones comunes incluyen: " "cp1252, latin1, iso-8859-1 and utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -216,49 +217,49 @@ msgstr "" "los directorios pmlname_img o images. Este complemento se ejecutará cada vez " "que añada un archivo PML a la biblioteca" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Extraer la portada de los archivos de cómic" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Leer metadatos desde ficheros %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Leer metadatos de libros electrónicos en archivos RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Leer metadatos de libros electrónicos en archivos ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Asignar metadatos a los archivos %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Establecer metadatos desde archivos %s" @@ -304,7 +305,7 @@ msgstr "" "si no sabe nada del documento de entrada." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -316,70 +317,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Este perfil está pensado para el SONY PRS-300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Este perfil está pensado para el SONY PRS-900" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Este perfil está pensado para el Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Este perfil está pensado para los libros Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Este perfil está pensado para el Hanlin V3 y sus clones." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Este perfil está pensado para el Hanlin V5 y sus clones." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Este perfil está pensado para el Cybook Gen3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Este perfil está pensado para el Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Este perfil está pensado para el Kindle de Amazon" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Este perfil está pensado para el Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Este perfil está pensado para el IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Este perfil está pensado para el IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Este perfile está pensado para el Nook de B&N." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Perfil de salida" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -389,21 +390,21 @@ msgstr "" "si quiere generar un documento que pueda ser leido en el PC o en varios " "dispositivos diferentes." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" "Pensado para el Ipad y dispositivos similares con una resolución de 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Este perfil está pensado para el lector Kobo" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Este perfil está pensado para el SONY PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Este perfil está pensado para el JetBook de 5 pulgadas." @@ -421,7 +422,7 @@ msgstr "Complementos desactivados" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 msgid "Enabled plugins" -msgstr "" +msgstr "Complementos habilitados" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " @@ -479,7 +480,7 @@ msgstr "Desactivar el complemento nombrado" msgid "Communicate with Android phones." msgstr "Comunicar con teléfonos Android." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -487,37 +488,48 @@ msgstr "" "Lista de directorios, separados por comas, donde almacenar los libros en el " "dispositivo. Se usará el primero que exista" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Comunicar con teléfonos S60." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." -msgstr "Comunicarse con iBooks a través de iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "Comunicarse con iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" "Dispositivo Apple detectado. Iniciando iTunes. Un momento, por favor..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "Actualizando listado de meta datos..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "%d de %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "terminado" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Usar la serie como categoría en iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "Guardar las portadas de iTunes/iBooks en caché" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -527,36 +539,30 @@ msgstr "" "Bórrelos utilizando la aplicación iBooks.\n" "Pulse \"Mostrar Detalles\" para ver una lista." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "configuraciones de controladores de dispositivos" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "Lista ordenada de formatos que el dispositivo aceptará" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -"Algunas portadas no pudieron ser convertidas.\n" -"Pulsar en \"Mostrar Detalles\" para ver una lista." +"Algunas portadas no se pudieron convertir.\n" +"Pulse en \"Mostrar detalles\" para ver una lista." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Noticias" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Comunicarse con iTunes." + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Comunicar con el lector Binatone Readme." @@ -579,9 +585,13 @@ msgstr "Comunicarse con el lector Cybook Gen 3 / Opus." msgid "Communicate with the EB600 eBook reader." msgstr "Comunicar con el lector EB600" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Comunicarse con el Astak Mentor EB600" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." -msgstr "" +msgstr "Comunicarse con el lector PocketBook 301." #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" @@ -626,6 +636,8 @@ msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used." msgstr "" +"Lista separada por comas de los directorios a los que enviar libros " +"electrónicos en el dispositivo. Se usará el primero que exista." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." @@ -685,10 +697,44 @@ msgstr "Comunicarse con el lector Kindle 2." msgid "Communicate with the Kindle DX eBook reader." msgstr "Comunicarse con el lector Kindle DX." -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "Comunicarse con el Kobo Reader" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Obteniendo la lista de libros en el dispositivo ..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Eliminando libros del dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Eliminando libros del listado de metatados del dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Añadiendo libros al listado de metatados del dispositivo..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Comunicarse con el Palm Pre" @@ -697,6 +743,10 @@ msgstr "Comunicarse con el Palm Pre" msgid "Communicate with the Booq Avant" msgstr "Comunicarse con el Booq Avant" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Comunicarse con el Sweex MM300" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Comunicarse son la tableta de internet Nokia 770." @@ -705,6 +755,10 @@ msgstr "Comunicarse son la tableta de internet Nokia 770." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Comunicarse son la tableta de internet Nokia 810." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "Comunicarse con el Nokia E52" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "El Nook" @@ -733,7 +787,7 @@ msgstr "" "Lista (separada por comas) de campos de metadatos para convertir en " "colecciones en el dispositivo. Las posibilidades son: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "Sin nombre" @@ -754,25 +808,25 @@ msgstr "Comunicarse con el lector Newsmy." msgid "Communicate with the iPapyrus reader." msgstr "Comunicarse con el lector iPapyrus." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "" "No se pudo detectar la unidad de disco %s. Pruebe después de reiniciar." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "" "No se puede detectar el punto de montaje %s. Inténtelo tras reiniciar." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "No se pudo detectar la unidad de disco %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "No se pudo encontrar el asistente de montaje: %s" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." @@ -780,25 +834,25 @@ msgstr "" "No se pudo detectar la unidad de disco %s. Probablemente el kernel está " "exportando una versión anticuada de SYSFS." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 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:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 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:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 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:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 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:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "No hay suficiente espacio libre en la tarjeta de almacenamiento" @@ -806,24 +860,32 @@ msgstr "No hay suficiente espacio libre en la tarjeta de almacenamiento" msgid "Configure Device" msgstr "Configurar dispositivo" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "configuraciones de controladores de dispositivos" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Lista ordenada de formatos que el dispositivo aceptará" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "Colocar los archivos en subdirectorios si el dispositivo los soporta" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Leer los metadatos de los archivos del dispositivo" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" -msgstr "" +msgstr "Usar el orden de autor en lugar del autor" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Plantilla para controlar cómo se guardan los libros" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Personalización adicional" @@ -836,36 +898,12 @@ msgstr "Comunicar con un lector de libros electrónicos." msgid "Get device information..." msgstr "Obtener información del dispositivo..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "Obteniendo la lista de libros en el dispositivo ..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "Transfiriendo libros al dispositivo..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "Añadiendo libros al listado de metatados del dispositivo..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "Eliminando libros del dispositivo..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "Eliminando libros del listado de metatados del dispositivo..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "Enviando metadatos al dispositivo..." @@ -1683,14 +1721,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" "No usar SVG para la portada del libro. Use esta opción si el EPUB va a " "usarse en un dispositivo que no soporta SVG, como el iPhone o el JetBook " -"Lite. Si esta opción, estos dispositivos mostrarán una página en blanco como " -"portada." +"Lite. Sin esta opción, dichos dispositivos mostrarán la portada como una " +"página en blanco." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" @@ -1700,12 +1738,12 @@ msgid "" "and bottom of the image, but the image will never be distorted. Without this " "option the image may be slightly distorted, but there will be no borders." msgstr "" -"Cuando se use una portada SVG esta opción podrá causar que la portada se " -"escale para cubrir el área disponible de pantalla, pero conservara su " -"relación de aspecto (la relación entre la anchura y la altura). Esto supone " -"que puede haber margenes blancos a los lados o arriba y abajo de la imagen, " -"pero la imagen no sera distorsionada. Sin esta opción la imagen puede estar " -"ligeramente distorsionada pero no tendrá margenes en blanco." +"Cuando se use una portada SVG esta opción hace que la portada se escale para " +"cubrir el área disponible de pantalla, pero conserva su relación de aspecto " +"(la relación entre la anchura y la altura). Esto supone que puede haber " +"márgenes blancos a los lados o arriba y abajo de la imagen, pero la imagen " +"no se distorsionará. Sin esta opción la imagen puede distorsionarse " +"ligeramente pero no tendrá margenes en blanco." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:169 msgid "Start" @@ -1729,7 +1767,7 @@ msgstr "No incluir un Índice al principio del libro." msgid "Add Table of Contents to beginning of the book." msgstr "Añadir Índice al principio del libro" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1737,7 +1775,7 @@ msgstr "" "Hacer una búsqueda en anchura de los enlaces en archivos HTML. Normalmente " "se hace una búsqueda en profundidad." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1747,7 +1785,7 @@ msgstr "" "negativo. El valor 0 implica que no se seguirá ningún enlace en el archivo " "HTML raíz. El valor por defecto es %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1759,7 +1797,7 @@ msgstr "" "que está haciendo, ya que puede ocasionar varios efectos desagradables en el " "resto del proceso de conversión." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1904,7 +1942,7 @@ msgid "Path to output file" msgstr "Ruta del fichero de salida" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Procesado detallado" @@ -2002,88 +2040,86 @@ msgstr "Tipo de letra monoespaciada a incrustar." msgid "Comic" msgstr "Cómic" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Título" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autor(es)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Editorial" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Productor" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Comentarios" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Etiquetas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Serie" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Idioma" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Marca de tiempo" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publicado" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Derechos" @@ -2215,39 +2251,43 @@ msgstr "Portada guardada en" msgid "No cover found" msgstr "No se encontro ninguna portada" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 -msgid "Downloads metadata from Douban.com" -msgstr "" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "Descarga de portadas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "Descarga los metadatos de Douban.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Metadatos descargados" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "puntuaciones" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "etiquetas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "descripción/reseñas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "Descargar %s desde %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Descarga metadatos de Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Descarga metadatos de isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2255,15 +2295,16 @@ msgstr "" "Para usar isbndb.com debe registrar una %scuenta gratuita%s e introducir su " "clave de acceso debajo." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Descarga metadatos sociales de amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" +"Descargar información de serie/etiquetas/calificación de librarything.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2287,29 +2328,29 @@ msgstr "" "una cuenta gratuita en isbndb.com.\n" "\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "El ISBN del libro cuyos metadatos se desean." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "El autor cuyo libro se quiere buscar." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "El título del libro que se quiere buscar." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "La editorial del libro que se quiere buscar." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "" "Ha vencido el tiempo de conexión a LibraryThing.com. Pruebe de nuevo más " "tarde." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2317,29 +2358,30 @@ msgstr "" "No se pudo obtener la portada debido a que el servidor sufre una carga " "excesiva. Por favor, inténtelo de nuevo más tarde." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " no encontrado." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "Error del servidor LibraryThing.com. Pruebe de nuevo más tarde." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" "\n" "%prog [opciones] ISBN\n" "\n" -"Obtener una portada para el libro identificado por el ISBN en " -"LibraryThing.com\n" +"Obtiene metadatos sociales o la imagen de portada de LibraryThing.com del " +"libro identificado por el ISBN.\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Portada" @@ -2383,70 +2425,70 @@ msgstr "Todos los artículos" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "Este es un libro Topaz de Amazon. No se puede procesar." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Página de título" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Índice" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Índice analítico" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Glosario" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Agradecimientos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliografía" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Colofón" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Copyright" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Dedicatoria" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epígrafe" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Prólogo" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Lista de ilustraciones" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Lista de tablas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Notas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Prefacio" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Texto principal" @@ -2938,7 +2980,7 @@ msgstr "Usar números romanos para los número de series" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:47 msgid "Sort tags list by name, popularity, or rating" -msgstr "" +msgstr "Ordenar la lista de etiquetas por nombre, popularidad o calificación" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 msgid "Number of covers to show in the cover browsing mode" @@ -3027,220 +3069,226 @@ msgstr "El diseño de la interfaz de usuario" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105 msgid "Show the average rating per item indication in the tag browser" msgstr "" +"Mostrar la calificación promedio de cada elemento en el explorador de " +"etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "Desactivar animaciones de la interfaz" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Copiado" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Copiar" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Copiar al portapapeles" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Escoger ficheros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "Usar sólo la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "Usar anotaciones generadas sólo desde la biblioteca principal" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "No hay libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "No se han seleccionado libros desde los que obtener anotaciones" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "Mezclando anotaciones de usuario en la base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
    Last Page Read: %d (%d%%)" msgstr "%s
    Última página leída: %d (%d%%)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
    Last Page Read: Location %d (%d%%)" msgstr "%s
    Última página leída: Localizada en %d (%d%%)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
    %s
    " msgstr "Lugar %d • %s
    %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
    " msgstr "Page %d • %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
    " msgstr "Lugar %d • %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "¿Cuantos libros vacios?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "¿Cuantos libros vacios debe de estar aumentado?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "Enviando libros al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "Libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "Libros en EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "Libros en LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "Libros en HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "Libros en LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "Libros en MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "Libros en formato topaz" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "Libros en formato texto" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "Libros en PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "Cómics" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "Archivos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "Libros soportados" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "Se han unido algunos libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" "Se han encontrado algunos libros duplicados y se han unido a los siguientes " "libros existentes:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "Fallo leyendo metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "Fallo leyendo metadatos de" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" -msgstr "" +msgstr "Añadir a la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "No hay libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" -msgstr "" +msgstr "No se han encontrado archivos de libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "No se puede borrar" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "Elegir formatos a borrar" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "Elegir formatos que no hayan de ser borrados" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" -msgstr "" +msgstr "No se pueden eliminar libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" -msgstr "" +msgstr "No hay ningún dispositivo conectado" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" -msgstr "" +msgstr "Memoria principal" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "Tarjeta de almacenamiento A" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "Tarjeta de almacenamiento B" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" -msgstr "" +msgstr "No hay libros para eliminar" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" -msgstr "" +msgstr "Ninguno de los libros seleccionados está en el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "Eliminando libros del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -3248,7 +3296,7 @@ msgstr "" "Los libros seleccionados serán eliminados permanentemente y los " "ficheros borrados del equipo. ¿Está seguro?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" @@ -3256,61 +3304,61 @@ msgstr "" "Los libros seleccionados se borrarán permanentemente del dispositivo. " "¿Está seguro?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "No se pueden descargar los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "metadatos sociales" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "Descargando %s para %d libro(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "No se pudieron descargar algunos metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "No se pudieron descargar metadatos para:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "No se pudieron descargar metadatos:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Error" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "No se pueden editar los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "No se pueden unir los libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "Deben seleccionarse al menos dos libros para unirlos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

    The second and subsequently selected " @@ -3321,7 +3369,7 @@ msgstr "" "primer libro seleccionado.

    El segundo libro y los siguientes " "no se borrarán ni se modificarán.

    Confirme que quiere continuar." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

    After merger the second and " @@ -3337,52 +3385,52 @@ msgstr "" "se borrará de forma permanente de su ordenador.

    ¿Está " "seguro de que quiere continuar?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" "Va a unir más de 5 libros. ¿Está seguro de que quiere continuar?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "No se puede guardar en disco" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "Elegir directorio de destino" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "Error al guardar" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "Hubo un error al guardar." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "No se pudieron guardar algunos libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 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/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "No se han seleccionado libros para generar el catálogo" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "Generando catálogo %s..." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "No se encontró ningún libro" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" @@ -3390,49 +3438,49 @@ msgstr "" "No hay libros para incluir en el catálogo\n" "Compruebe la exclusión de etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "Catálogo generado." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "Directorio para exportar catálogos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "Seleccionar destino para %s.%s" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "Obteniendo noticias de " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr " obtenidas." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "No se puede convertir" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "Iniciando la conversión de %d libro(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "No se puede visualizar" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "Elija el formato para visualizar" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "Varios libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3444,11 +3492,11 @@ msgstr "" "equipo. Una vez comenzado el proceso no puede deterse hasta que se complete. " "¿Desea continuar?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "No se puede abrir la carpeta" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "%s no tiene formatos disponibles." @@ -3456,36 +3504,36 @@ msgstr "%s no tiene formatos disponibles." msgid "Searching in" msgstr "Buscando en" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Añadiendo..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Buscando en todos los subdirectorios..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Error en la ruta" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 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:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Sin libros" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Añadido" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "Fallo al añadir" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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." @@ -3494,11 +3542,11 @@ msgstr "" "calibre y añadir los libros en grupos más pequeños, hasta que encuentre el " "libro que causa el problema." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "¡Se han encontrado duplicados!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -3506,15 +3554,15 @@ msgstr "" "Ya existen libros con el mismo titulo que los siguientes en la base de " "datos. ¿Añadirlos de todas formas?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "Añadiendo duplicados" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Guardando..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Guardado" @@ -3611,23 +3659,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3674,57 +3722,58 @@ msgstr "" "&Varios libros por carpeta. Se supone que cada fichero de libro es un libro " "diferente" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Ruta" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formatos" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "Colecciones" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "Clic para abrir" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Ninguno" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" -msgstr "" +msgstr "Pulse para abrir la ventada de Detalles del libro" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml.py:16 msgid "CSV/XML Options" @@ -3771,7 +3820,7 @@ msgstr "salida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3781,7 +3830,7 @@ msgstr "salida" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3803,8 +3852,8 @@ msgstr "Opciones de libro digital" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Catálogo" @@ -4012,7 +4061,7 @@ msgstr "&Sin portada SVG" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:52 msgid "Preserve cover &aspect ratio" -msgstr "Conservar la portada y la proporción de aspecto." +msgstr "Mantener las &proporciones de la portada." #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:53 msgid "Split files &larger than:" @@ -4277,77 +4326,77 @@ msgstr "" "Establecer metadatos. El fichero de salida contendrá tantos metadatos como " "sea posible." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Elegir portada para " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "No se puede leer" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Error leyendo el fichero" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " no es una imagen válida" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Portada" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Usar portada del fichero de &origen" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Cambia la imagen de &portada:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "Usar portada del fichero de &origen" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Título: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 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:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Autor(es): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "O&rden por autor:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" @@ -4355,20 +4404,20 @@ msgstr "" "Cambiar el(los) autor(es). Para especificar más de uno, sepárelos mediante " "comas." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Editorial: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "Eti&quetas: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." @@ -4376,23 +4425,23 @@ msgstr "" "Etiquetas para clasificar el libro (muy útil en búsquedas).

    Pueden " "utilizarse cualesquier palabras o frases, separadas por comas." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Serie:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "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:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Libro " @@ -4477,12 +4526,12 @@ msgid "PDB Input" msgstr "Entrada PDB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Interpretar todas las líneas como párrafos" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "Suponer formato para impresión" @@ -4520,7 +4569,7 @@ msgstr "&Orientación:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:45 msgid "Preserve &aspect ratio of cover" -msgstr "Mantener relación de &aspecto de la portada" +msgstr "Mantener las &proporciones de la portada" #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output.py:14 msgid "RB Output" @@ -4612,12 +4661,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Expresión regular no valida: %s" @@ -4703,11 +4752,11 @@ msgstr "Fi<ro para el Índice:" msgid "TXT Input" msgstr "Entrada TXT" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "Procesar como markdown" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" "No insertar tabla de contenido en texto de salida cuando se usa Markdown" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "Mantener &espacios" @@ -4841,7 +4890,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:119 msgid "Cover browser could not be loaded" -msgstr "No se ha podido cargar el navegador de carátulas" +msgstr "No se ha podido cargar el explorador de portadas" #: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:171 msgid "Browse by covers" @@ -4852,6 +4901,7 @@ msgstr "Explorar por portadas" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4880,128 +4930,145 @@ msgstr "estrella(s)" msgid "Unrated" msgstr "Sin calificar" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr " índice:" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "Numerar automáticamente los libros de esta serie" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "Eliminar todas las etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "etiquetas a añadir" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "etiquetas a eliminar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "No hay detalles disponibles." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "El dispositivo ya no esta conectado." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "Obtener información del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "Obtener lista de libros en el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "Obtener anotaciones del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "Enviar metadatos al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "Enviar colecciones al dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "Pasar %d libros al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "Borrar libros del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "Obtener libros del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "Ver libro en el dispositvo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 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:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "Enviar por correo electrónico a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr " y elimínalo desde la librería" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Enviar a la memoria principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Enviar a la tarjeta de memoria A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Enviar a la tarjeta de memoria B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "Memoria principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "Enviar y eliminar de la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "Enviar formato específico" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "Conectar a carpeta" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" -msgstr "Desconectar de la carpeta" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "Conectar a iTunes" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "Desconectar dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "Obtener anotaciones (experimental)" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "Error en la comunicación con el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "Seleccionar carpeta para abrir como un dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "Falló" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "Error de comunicación con el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5009,132 +5076,132 @@ 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "Dispositivo: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr " detectado." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "Conectado " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "elegido para enviar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "Elige el formato para enviar al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "Sin dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 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:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Sin tarjeta" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 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:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "Libro electrónico:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "El libro electrónico está adjunto" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "por" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "en el formato %s." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Enviando correo electrónico a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "No hay formatos adecuados" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 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:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 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:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "Fallo al enviar libros por correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 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:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "Enviado por correo electrónico:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "Noticias:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "Adjunto está el" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Enviar noticias a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 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:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Enviando catálogos al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "Enviando noticias al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "Enviando libros al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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." @@ -5143,11 +5210,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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "No hay espacio en el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" @@ -5166,7 +5233,7 @@ msgstr "Usar subdirectorios" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83 msgid "Use author sort for author" -msgstr "" +msgstr "Usar el orden de autor por autor" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85 msgid "Save &template:" @@ -5246,15 +5313,15 @@ msgstr "&Perfil:" msgid "Edit Comments" msgstr "Editar comentarios" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "%(plugins)s de %(plugin_type)s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "Complementos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " @@ -5262,23 +5329,23 @@ msgstr "" "\n" "Personalización: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Conversión" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "General" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Interfaz" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Añadir/Guardar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" @@ -5286,11 +5353,11 @@ msgstr "" "Envío de\n" "correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Avanzada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -5298,25 +5365,25 @@ msgstr "" "Servidor\n" "de contenido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Complementos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Autoenviar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "Correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" "Formatos para enviar por correo electrónico. El primero formato que " "concuerde se enviará." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." @@ -5325,23 +5392,23 @@ msgstr "" "
    a esta dirección de correo electrónico (siempre que estén en uno de los " "formatos listados)." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "nueva dirección de correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "Ancho" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "Estrecho" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "Puerto de sistema seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " @@ -5352,131 +5419,131 @@ msgstr "" "permita que el servidor ocupe este puerto. Para estar seguro, elija un " "número de puerto mayor de 1024." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "Fallo al instalar las herramientas de línea de órdenes." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "Herramientas de línea de órdenes instaladas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "Herramientas de línea de órdenes instaladas en" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" "Si mueve calibre.app, deberá reinstalar las herramientas de línea de órdenes." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "No hay ninguna ruta de complementos válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s no es una ruta de complementos válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Elegir complemento" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "El complemento no puede desactivarse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "El complemento: %s no puede desactivarse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Complemento no personalizable" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Complemento: %s no necesita personalización" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "Personalizar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "No se puede eliminar el complemento incorporado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" " no puede eliminarse. Es un complemento incorporado. Intente desactivarlo en " "su lugar." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "Debe seleccionar una columna para borrarla" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "La columna seleccionada no es una columna personalizada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "¿Está seguro?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "¿Seguro que quiere borrar la columna %s y todos sus datos?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Registro de errores:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "Registro de accesos:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "Fallo al iniciar el servidor de contenidos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "Seleccionar ubicación para los libros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Tamaño no válido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "El tamaño %s no es válido. Debe ser de la forma anchuraxaltura" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Ubicación de la base de datos no válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Ubicación de la base de datos no válida " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "
    Debe ser un directorio." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "Ubicación de la base de datos no válida.
    Imposible escribir en " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "Hay que reiniciar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." @@ -5484,19 +5551,19 @@ msgstr "" "Los cambios realizados requieren que calibre vuelva a iniciarse. Por favor " "reinicie en cuanto le sea práctico." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "Comprobando la integridad de la base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "Fallo al comprobar la integridad de la base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "Se encontraron incoherencias" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -5508,11 +5575,11 @@ msgstr "" "eliminado. Debería comprobarlos manualmente. Esto puede ocurrir si manipula " "los ficheros de la carpeta de la biblioteca directamente." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "TabWidget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " @@ -5522,11 +5589,11 @@ msgstr "" "se añaden. calibre puede leer los metadatos del contenido del fichero o de " "su nombre." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "Leer metadatos sólo del nombre de &fichero" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." @@ -5534,31 +5601,31 @@ msgstr "" "Intercambiar el nombre y el apellido del autor. Esto sólo afecta a los " "metadatos extraídos de nombres de ficheros." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "&Intercambiar nombre y apellido del autor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " "punctuation, case, etc. Author match is exact." msgstr "" -"Si se encuentra un libro preexistente con el mismo título y autor que no " -"tenga el formato que se está\n" -"añadiendo, se añade el formato a ese libro en lugar de crear una nueva " -"entrada. Si el libro existente\n" -"ya tiene el formato, no se hace nada.\n" +"Si se encuentra un libro ya existente con el mismo título y autor que no " +"tiene el formato que está añadiendo,\n" +"se añade el formato al libro existente, en lugar de crear una nueva entrada. " +"Si el libro existente ya tiene el formato,\n" +"se omite sin ningún mensaje.\n" "\n" -"La correspondencia en los títulos no tiene en cuenta los artículos (\"the\", " -"\"a\", \"an\"), puntuación, mayúsculas,\n" -"etc. La correspondencia del autor es exacta." +"Al comparar títulos no se tienen en cuenta los artículos iniciales (\"the\", " +"\"a\", \"an\"), puntuación, mayúsculas o minúsculas, etc. La comparación de " +"autores es exacta." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" @@ -5566,15 +5633,15 @@ msgstr "" "Si se encuentran libros con el mismo título y autor, &unir automáticamente " "los nuevos ficheros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "&Configurar los metadatos a partir del nombre de fichero" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "&Añadir libros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" @@ -5582,43 +5649,65 @@ msgstr "" "Aquí puede controlar cómo guardará calibre los libros cuando se pulse el " "botón Guardar a disco:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Guardar la &portada por separado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "Actualizar los &metadatos de las copias guardadas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "Guardar los metadatos en un fichero &OPF" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "Convertir los caracteres no ASCII a &equivalentes ASCII" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "Escribir fec&has con formato:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "Guardar ficheros en &formatos:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Sustituir espacios por guiones ba&jos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Cambiar rutas a mi&núsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "&Guardar libros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "Mantiene las colecciones del dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" +"Si se activa, las colecciones no se borrarán incluso si un libro con los " +"metadatos modificados se vuelve a enviar y la colección no está en los " +"metadatos del libro. Además, se hace posible editar las colecciones en la " +"vista del dispositivo. Si se desactiva, las colecciones corresponderán " +"siempre a los metadatos en la biblioteca de calibre." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " @@ -5629,18 +5718,18 @@ msgstr "" "los dispositivos concretos si se personaliza los complementos de interfaz de " "dispositivo en Preferencias -> Complementos." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "Enviar a &dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Preferencias" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -5649,28 +5738,28 @@ msgstr "" "en carpetas ordenadas por autor, los metadatos se almacenan en el fichero " "metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Seleccionar la nueva ubicación de la base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Mostrar un aviso cuando haya una &nueva versión disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" "Descargar metadatos &sociales (etiquetas/valoraciones/etc...) por defecto" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "&Reemplazar el autor y el título al adquirir metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "&Tiempo de espera máximo por defecto de la red:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -5678,148 +5767,157 @@ msgstr "" "Establecer el tiempo de espera maximo para peticiones de red (cada vez que " "se conecte a Internet para adquirir alguna información)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " segundos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Se&leccionar idioma (requiere reiniciar el programa):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Normal" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Alta" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Baja" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "&Prioridad de tareas:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "F&ormato de salida preferente:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Orden de preferenc&ia de formatos de entrada:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "Uso de números &romanos para los números dentro de una serie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "Activar &icono en bandeja del sistema (requiere reinicio)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Mostrar ¬icaciones en la bandeja del sistema" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "Mostrar pantalla de bien&venida al inicio" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" "Mostrar explorador de &portadas en ventana separada (requiere reinicio)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" -msgstr "" +msgstr "Mostrar calificaciones &promedio en el explorador de etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "&Buscar mientras se escribe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "" "Enviar noticias &descargadas automáticamente al lector de libros electrónicos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" "&Eliminar noticias de la biblioteca cuando se hayan enviado automáticamente " "al lector." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "Nú&mero de portadas a mostrar en el explorador (requiere reinicio):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Barra de herramientas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Grande" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Medio" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Pequeño" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "Tamaño de botón en la barra de &herramientas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "Mostrar &texto en los botones de la barra de herramientas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "Seleccione las &columnas visibles en la vista de la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "Eliminar una columna definida por el usuario" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "Añadir una columna definida por el usuario" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "Editar la configuración de una columna definida por el usuario" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "&Usar visor interno para:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "Interfaz de usuario &diseño (necesario reiniciar):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" +"Desactiva todas las animaciones. Útil si tiene un ordenador lento o antiguo." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "Desactivar &animaciones" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "" "Añadir una dirección de correo electrónico a la que se enviarán los libros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "&Añadir correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Asignar como pre&determinada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "E&liminar correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" @@ -5829,33 +5927,33 @@ msgstr "" "Se enviarán correos automáticamente con las noticias descargadas a todas las " "direcciones que tengan la opción de envío automático marcada." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "&Número máximo de procesos en espera (necesita reiniciar):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "&Comprobar la integridad de la base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "Instalar &herramientas de línea de órdenes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "&Abrir el directorio de configuración de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" "&Limitar el número máximo de tareas simultáneas al número de núcleos de CPU " "disponibles." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "&Depurar detección de dispositivos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " @@ -5866,25 +5964,25 @@ msgstr "" "en las preferencias tendrá efecto sólo después de que se reinicie el " "servidor." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "&Puerto del servidor:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "&Usuario:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "Cont&raseña:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -5892,7 +5990,7 @@ msgstr "" "Si se deja la contraseña en blanco, cualquiera podrá acceder a su colección " "de libros a través la interfaz web." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -5900,45 +5998,45 @@ msgstr "" "El tamaño máximo (anchura × altura) con el que se mostrarán las portadas. " "Las portadas mayores se redimensionarán. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "&Tamaño máximo de portada:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "&Mostrar contraseña" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "Número máximo de elementos &OPDS por consulta:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "&Máximo número de elementos OPDS sin agrupar:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "&Iniciar servidor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "&Detener servidor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "Pro&bar servidor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "Ejecutar servidor &automáticamente al iniciar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Ver registros del &servidor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5955,7 +6053,7 @@ msgstr "" "el lector Stanza de su iPhone, donde miservidor es el nombre de servidor " "completo o la dirección IP del equipo donde se ejecuta calibre." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." @@ -5963,27 +6061,27 @@ msgstr "" "Aquí puede personalizar el comportamiento de calibre controlando qué " "complementos usa." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Activar/&Desactivar complemento" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "&Personalizar complemento" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&Eliminar complemento" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Añadir nuevo complemento" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "&Fichero de complemento:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&Añadir" @@ -6020,10 +6118,10 @@ msgid "Number" msgstr "Número" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Fecha" @@ -6056,39 +6154,43 @@ msgstr "" "Texto largo, como los comentarios, no se mostrará en el explorador de " "etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "Columna de texto para información como la serie" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "Números con decimales" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "Enteros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "Valoraciones, se mostrarán con estrellas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "Sí/No" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "No hay ninguna columna seleccionada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "No se ha seleccionado ninguna columna" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "La columna seleccionada no es una columna definida por el usuario" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "No se ha asignado nombre de búsqueda" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" @@ -6096,19 +6198,19 @@ msgstr "" "La etiqueta debe contener sólo letras, dígitos y subrayados, y empezar con " "una letra" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "No se ha asignado ningún encabezado de columna" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "El nombre de búsqueda %s ya está en uso" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "El encabezado %s ya está en uso" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -6237,60 +6339,60 @@ msgstr "ERROR" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 msgid "Location" -msgstr "" +msgstr "Ubicación" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "Formato" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 msgid "Delete from device" -msgstr "" +msgstr "Eliminar del dispositivo" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author sort" -msgstr "" +msgstr "Orden de autor" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 msgid "Manage authors" -msgstr "" +msgstr "Administrar autores" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Orden de autor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "Buscando metadatos..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "No se encontraron metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" "La descarga de metadatos parece haberse interrumpido. Inténtelo de nuevo más " "tarde." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Aviso" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "No se pudieron obtener los metadatos de:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "No se encontraron metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -6376,7 +6478,7 @@ msgid "Author s&ort: " msgstr "&Orden de autor: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -6385,14 +6487,14 @@ msgstr "" "ordena Miguel de Cervantes como Cervantes, Miguel de." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 -#: /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:372 msgid "&Rating:" msgstr "&Valoración:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "Valoración de este libro: 0-5 estrellas" @@ -6401,7 +6503,7 @@ msgid "No change" msgstr "Sin cambios" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " estrellas" @@ -6411,8 +6513,8 @@ msgstr "Añadir eti&quetas: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "Abrir editor de etiquetas" @@ -6445,10 +6547,6 @@ msgstr "" "Así, si usted selecciona primero el libro A y luego el libro B,\n" "el libro A será el número 1 de la serie y el libro B será el número 2." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "Numerar automáticamente los libros de esta serie" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -6466,217 +6564,217 @@ msgstr "" "Eliminar las &configuraciones de conversión para los libros seleccionados" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "Metadatos &básicos" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "Metadatos &personalizados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "No es una imagen válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "Elegir formatos para " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "No tiene permiso" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "No tiene permiso para leer los siguientes ficheros:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "No se ha seleccionado ningún formato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "No se pudieron leer los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 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:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "No se pudo leer la portada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 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:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 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:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 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:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "Este ISBN es válido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "Este ISBN no es válido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "No se ha podido utilizar el editor de etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" "El editor de etiquetas no se puede usar si has modificado las etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Descargando portada..." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "No se pudo descargar la portada" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
    " msgstr "No se pudo descargar la portada.
    " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "El tiempo de descarga ha vencido." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Portada incorrecta" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 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:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "Se encontraron errores" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "Se encontraron errores al descargar los metadatos sociales" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "No se pudieron obtener los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "Permiso denegado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Editar metadatos" -#: /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:362 msgid "Meta information" msgstr "Metadatos" -#: /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:365 msgid "Swap the author and title" msgstr "Intercambiar autor y título" -#: /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:368 msgid "Author S&ort: " msgstr "&Orden de autor: " -#: /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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 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:389 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 msgid "IS&BN:" msgstr "&ISBN:" -#: /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:387 msgid "Publishe&d:" msgstr "Publica&do:" -#: /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:390 msgid "dd MMM yyyy" msgstr "dd MMM yyyy" -#: /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:391 msgid "&Date:" msgstr "&Fecha:" -#: /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:392 msgid "&Comments" msgstr "Co&mentarios" -#: /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:393 msgid "&Fetch metadata from server" msgstr "&Obtener metadatos del servidor" -#: /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:394 msgid "Available Formats" msgstr "Formatos disponibles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 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:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 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:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 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:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 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:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "Volver a la portada por defecto" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Des&cargar portada" @@ -7044,7 +7142,7 @@ msgid "Select the content kind of the new category" msgstr "Seleccione el tipo de contenido de la nueva categoría" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "¿Está seguro?" @@ -7103,41 +7201,33 @@ msgstr "" "Añadir etiqueta a la lista de etiquetas disponibles y aplicarla al libro " "actual" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "El elemento está en blanco" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "No puede establecerse un elemento en blanco. Bórrelo en su lugar." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "El elemento ya está en uso" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "El elemento %s ya está usado." - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "No hay ningún elemento seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "Debe seleccionar un elemento de la lista de elementos disponibles." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "No hay elementos seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "Debe seleccionar al menos un elemento de la lista." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "¿Está seguro de que quiere borrar los siguientes elementos?" @@ -7438,11 +7528,11 @@ msgstr "Expresión regular (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "No hay coincidencias" @@ -7494,31 +7584,31 @@ msgstr "Edita metadatos en bloque" msgid "Download metadata and covers" msgstr "Descargar metadatos y portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "Descargar sólo los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "Descargar sólo las portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "Descargar sólo metadatos sociales" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "Unir en el primer libro seleccionado - borrar el resto" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "Unir en el primer libro seleccionado - mantener el resto" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "Añadir libros desde un único directorio" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -7527,7 +7617,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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -7536,92 +7626,98 @@ msgstr "" "por directorio, se asume que cada fichero de libro electrónico es un libro " "diferente." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 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/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Guardar en el disco" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "Guardar en el disco, en un único directorio" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "Guardar solamente el formato %s en disco" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "Guardar sólo el formato %s en un único directorio" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Mostrar" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "Mostrar un formato específico" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "Eliminar libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "Eliminar formatos específicos de los libros seleccionados.." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "Eliminar todos los formatos de los libros seleccionados, excepto..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" -msgstr "Eliminar cubiertas de los libros seleccionados" +msgstr "Eliminar portadas de los libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" -msgstr "" +msgstr "Eliminar los libros que correspondan del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "Convertir por separado" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Convertir en bloque" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "Crear catálogo de los libros en la biblioteca de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "Ejecutar el asistente de bienvenida" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "Libros similares..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" -msgstr "" +msgstr "Añadir libros a la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "Administrar colecciones" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" -msgstr "Navegador de carátulas" +msgstr "Explorador de portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "Navegador de etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "Detalles del Libro" @@ -7692,42 +7788,42 @@ msgstr "N" msgid "Y" msgstr "S" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "En el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Tamaño (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Valoración" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Libro %s de %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "El nombre de búsqueda es \"{0}\"" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "En la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "Tamaño" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "Marcado para borrarlo" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "Doble clic para editarme

    " @@ -7771,11 +7867,11 @@ msgstr "Mostrar columna" msgid "Restore default layout" msgstr "Restaurar formato por defecto" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "No permitido" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7879,52 +7975,52 @@ msgstr "No comprobar actualizaciones" msgid "Calibre Library" msgstr "Biblioteca de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "Escoja una ubicación para su biblioteca de libros de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "Error en la creación de la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "Fallo al crear la libreria calibre en: %r." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "Escoja una ubicación para su nueva biblioteca de libros de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "Iniciando la interfaz de usuario..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "Reparación fallida" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" "La reparación de la base de datos falló. Comenzando con una nueva biblioteca " "vacía." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Ubicación de la base de datos incorrecta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" "Ubicación de la base de datos %r errónea. Calibre se cerrará a continuación." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "Base de datos corrupta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " @@ -7934,54 +8030,54 @@ msgstr "" "intente repararla automáticamente? Si escoge \"No\", se creará una nueva " "biblioteca de calibre vacía" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" "Reparando la base de datos. Esto puede requerir mucho tiempo si la colección " "es grande." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" "Ubicación de la base de datos %r errónea. Se comenzará con una biblioteca de " "calibre nueva y vacía" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "Iniciando %s: Cargando libros..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 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:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "No se puede iniciar " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s ya está ejecutándose." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 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:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "zona superior derecha de la pantalla." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "zona inferior derecha de la pantalla." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "inténtelo después de reiniciar el equipo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "pruebe a borrar el fichero" @@ -8167,21 +8263,21 @@ 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:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Buscar" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" "La búsqueda seleccionada será borrada permanentemente. ¿Está seguro?" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "Buscar (Para búsqueda avanzada, pulse el botón de la izquierda)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "Búsquedas guardadas" @@ -8257,74 +8353,74 @@ msgstr "Limpiar" msgid "&Alternate shortcut:" msgstr "&Atajo alternativo:" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" -msgstr "" +msgstr "Renombrar \"%s\"" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" -msgstr "" +msgstr "Editar orden para \"%s\"" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "Ocultar categoría %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "Mostrar categoría" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "Ver todas las categorias" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" -msgstr "" +msgstr "Administrar %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "Administrar búsquedas guardadas" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "Administrar categorías de usuarios" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "Búsquedas" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "Nombre de búsqueda duplicado" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "El nombre guardado buscado %s está en uso." -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" -msgstr "" +msgstr "Ordenar por nombre" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" -msgstr "" +msgstr "Ordenar por popularidad" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" -msgstr "" +msgstr "Ordenar por calificación promedio" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "Buscar todas" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "Buscar cualquiera" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "Administrar categorías de &usuario" @@ -8395,38 +8491,38 @@ msgstr "

    Para ayuda mirar el: Manual de usuario
    " 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/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "Guía de inicio rápido de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "No se puede configurar" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 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/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "No se puede configurar antes de reiniciar calibre." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "No hay información detallada disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 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/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Error de conversión" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -8435,15 +8531,15 @@ msgstr "" "href=\"%s\">DRM. Debe eliminar primero el DRM con herramientas de " "terceros." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Receta deshabilitada" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "Fallo" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 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." @@ -8452,11 +8548,11 @@ msgstr "" "lo encuentra útil, por favor, considere donar dinero para apoyar su " "desarrollo." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 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/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" @@ -8467,11 +8563,11 @@ msgstr "" "de datos en el dispositivo.
    \n" " ¿Está seguro de que desea salir?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "AVISO: Tareas activas" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8975,15 +9071,15 @@ msgstr "Mayús+F3" msgid "Print eBook" msgstr "Imprimir libro electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "Copiar imagen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "Pegar imagen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -8993,7 +9089,7 @@ msgstr "" "%d\n" "libros" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" @@ -9003,7 +9099,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" @@ -9013,7 +9109,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" @@ -9023,55 +9119,55 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 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:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 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:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 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:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 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:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "Libros ubicados en" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "Cambiar mayúsculas/minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "Mayúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "Minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "Invertir mayúsculas/minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "Formato de título (todas las iniciales en mayúscula)" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "Arrastre para ajustar el tamaño" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "Mostrar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "Ocultar" @@ -9384,48 +9480,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "Activar el servidor de &contenidos" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "today" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "yesterday" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "thismonth" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "daysago" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "no" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "unchecked" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "checked" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "yes" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "blank" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "empty" @@ -9961,7 +10057,7 @@ msgstr "Mostrar información de salida detallada. Útil para la depuración" msgid "Error: You must specify a catalog output file" msgstr "Error: Debe especificar un fichero de salida para el catálogo" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -9982,7 +10078,7 @@ msgstr "" "orden custom_columns.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." @@ -9990,11 +10086,11 @@ msgstr "" "Si la columna almacena valores múltiples, añadir los valores especificados a " "los existentes en lugar de reemplazarlos." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "Error: Debe especificar un nombre de campo, identificador y valor" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -10009,19 +10105,19 @@ msgstr "" "etiquetas de columna e identificadores.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "Mostrar detalles de las columnas" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "Se perderán todos los datos de la columna: %r. Está seguro (s/n)? " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "s" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -10038,15 +10134,15 @@ msgstr "" " las columnas disponibles con la orden custom_columns.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "No pedir confirmación" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "Error: Debe especificar una etiqueta para la columna" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -10069,43 +10165,43 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/database2.py:70 msgid "%sAverage rating is %3.1f" -msgstr "" +msgstr "%sCalificación promedio es %3.1f" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "Principal" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "Tarjeta A" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "Tarjeta B" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" "

    Migrando la base de datos antigua a la biblioteca de libros electrónicos " "en %s

    " -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "Copiando %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "Compactando la base de datos" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "Comprobando la integridad de SQL..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "Comprobando ficheros inexistentes." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "ID comprobado" @@ -10292,8 +10388,7 @@ msgstr "Nombre de usuario para acceder. Por defecto es: %default" #: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:37 msgid "The maximum size for displayed covers. Default is %default." -msgstr "" -"Máximo tamaño para las portadas portadas. Valor por defecto: %default." +msgstr "Máximo tamaño para las portadas. Valor por defecto: %default." #: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:39 msgid "" @@ -10450,6 +10545,12 @@ msgstr "Lista de búsquedas guardadas con nombre" msgid "User-created tag browser categories" msgstr "Categorías del explorador de etiquetas creadas por el usuario" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" +"Mantener todas las colecciones aunque no estén en los metadatos de la " +"biblioteca." + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "Esperando..." @@ -10520,7 +10621,7 @@ msgstr "Inglés (Pakistán)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 msgid "English (Israel)" -msgstr "" +msgstr "Inglés (Israel)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 msgid "English (Singapore)" @@ -10618,88 +10719,88 @@ msgstr "" msgid "Unknown News Source" msgstr "Fuente de noticias desconocida" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "La receta \"%s\" necesita usuario y contraseña." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Descarga finalizada" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "Fallo al descargar los siguientes artículos:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "Fallo al descargar partes de los siguientes artículos" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " de " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "\tEnlaces fallidos:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" "No se pudo obtener el artículo. Ejecute calibre con -vv para ver el motivo" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "Obteniendo canales de noticias..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "Se obtivieron canales de noticias de la página principal" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Intentando descargar la portada..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "Generando el rótulo:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "Iniciando la descarga [%d proceso(s)]" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Canales de noticias descargados en %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "No se pudo descargar la portada: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Descargando la portada desde %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "Imagen del rótulo descargada" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Artículo sin título" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Artículo descargado: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "Falló la descarga del artículo: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "Obteniendo canal de noticias" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." @@ -10707,7 +10808,7 @@ msgstr "" "No se pudo ingresar, revise su nombre de usuario o clave para el servicio de " "boletín de calibre" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -10721,12 +10822,12 @@ msgstr "Usted" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Planificado" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "Personalizado" @@ -12604,6 +12705,18 @@ msgstr "No descargar estilos CSS." #~ "Longitud de línea media si el HTML procede de una conversión parcial de PDF " #~ "previa." +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [opciones] ISBN\n" +#~ "\n" +#~ "Obtener una portada para el libro identificado por el ISBN en " +#~ "LibraryThing.com\n" + #~ msgid "Options to control e-book conversion." #~ msgstr "Opciones para controlar la conversión de libros electrónicos." @@ -12994,6 +13107,25 @@ msgstr "No descargar estilos CSS." #~ msgid "dummy option until real options are determined." #~ msgstr "opción vacía hasta que las opciones reales se determinen." +#~ msgid "" +#~ "If an existing book with a similar title and author is found that does not " +#~ "have the format being added, the format is added \n" +#~ "to the existing book, instead of creating a new entry. If the existing book " +#~ "already has the format, then it is silently ignored.\n" +#~ "\n" +#~ "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " +#~ "punctuation, case, etc. Author match is exact." +#~ msgstr "" +#~ "Si se encuentra un libro preexistente con el mismo título y autor que no " +#~ "tenga el formato que se está\n" +#~ "añadiendo, se añade el formato a ese libro en lugar de crear una nueva " +#~ "entrada. Si el libro existente\n" +#~ "ya tiene el formato, no se hace nada.\n" +#~ "\n" +#~ "La correspondencia en los títulos no tiene en cuenta los artículos (\"the\", " +#~ "\"a\", \"an\"), puntuación, mayúsculas,\n" +#~ "etc. La correspondencia del autor es exacta." + #~ msgid "(%d found)" #~ msgstr "(%d encontrado)" @@ -13009,6 +13141,17 @@ msgstr "No descargar estilos CSS." #~ msgid "left" #~ msgstr "izquierda" +#~ msgid "" +#~ "Do not use SVG for the book cover. Use this option if your EPUB is going to " +#~ "be used ona device that does not support SVG, like the iPhone or the " +#~ "JetBook Lite. Without this option, such devices will display the cover as a " +#~ "blank page." +#~ msgstr "" +#~ "No usar SVG para la portada del libro. Use esta opción si el EPUB va a " +#~ "usarse en un dispositivo que no soporta SVG, como el iPhone o el JetBook " +#~ "Lite. Si esta opción, estos dispositivos mostrarán una página en blanco como " +#~ "portada." + #~ msgid "Editing meta information for %d books" #~ msgstr "Editando metadatos de %d libros" @@ -13031,11 +13174,23 @@ msgstr "No descargar estilos CSS." #~ msgid "Failed to create calibre library at: %r. Aborting." #~ msgstr "Error en la creación de la biblioteca de calibre en: %r. Cancelando." +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Comunicarse con iBooks a través de iTunes." + +#~ msgid "Disconnect from folder" +#~ msgstr "Desconectar de la carpeta" + #~ msgid "" #~ "The label must contain only letters and digits, and start with a letter" #~ msgstr "" #~ "La etiqueta debe contener sólo letras y números, y empezar con una letra" +#~ msgid "Item already used" +#~ msgstr "El elemento ya está en uso" + +#~ msgid "The item %s is already used." +#~ msgstr "El elemento %s ya está usado." + #~ msgid "Hide Tag Browser" #~ msgstr "Ocultar explorador de etiquetas" diff --git a/src/calibre/translations/fi.po b/src/calibre/translations/fi.po index 650f20223a..ccbaeec292 100644 --- a/src/calibre/translations/fi.po +++ b/src/calibre/translations/fi.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-04-18 13:18+0000\n" -"PO-Revision-Date: 2010-04-18 11:09+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-02 08:48+0000\n" +"Last-Translator: Jeespox \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-19 03:42+0000\n" +"X-Launchpad-Export-Date: 2010-07-03 03:44+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -23,39 +23,40 @@ msgstr "Ei tee mitään" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:46 #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:72 -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:75 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /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/driver.py:204 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 -#: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:421 +#: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:319 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:322 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:230 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:264 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:364 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:35 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:62 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:118 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:120 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:444 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:903 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:123 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:125 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:945 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1057 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:39 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:28 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pml.py:23 @@ -63,20 +64,20 @@ msgstr "Ei tee mitään" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/txt.py:14 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:38 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:64 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:76 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:117 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:151 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:609 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:808 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:810 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:77 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:118 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:610 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:816 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:909 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:914 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:980 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/writer.py:173 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/writer.py:174 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:39 @@ -97,48 +98,53 @@ msgstr "Ei tee mitään" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:63 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:81 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:82 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:28 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:97 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:286 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:574 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:583 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:414 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:436 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:964 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1091 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 -#: /home/kovid/work/calibre/src/calibre/library/cli.py:311 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:248 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:260 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:680 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:717 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1108 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1110 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1232 -#: /home/kovid/work/calibre/src/calibre/library/server.py:671 -#: /home/kovid/work/calibre/src/calibre/library/server.py:747 -#: /home/kovid/work/calibre/src/calibre/library/server.py:794 -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112 -#: /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/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 +#: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 +#: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -156,7 +162,7 @@ msgstr "Tiedostotyyppi" msgid "Metadata reader" msgstr "Metatietojen lukija" -#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:237 +#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:235 msgid "Metadata writer" msgstr "Metatietojen kirjoittaja" @@ -174,7 +180,7 @@ msgstr "" "kaikki linkitetyt tiedostot. Tämä lisäosa ajetaan aina lisätessäsi HTML-" "tiedoston kirjastoon." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -182,7 +188,7 @@ msgstr "" "HTML-tiedostojen merkkikoodaus. Yleisiä vaihtoehtoja: cp1252, latin1, iso-" "8859-1 ja utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -192,49 +198,49 @@ msgstr "" "pmlname_img tai images. Tämä lisäosa ajetaan aina lisätessäsi PML-tiedoston " "kirjastoon." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Poimi kansi sarjakuvatiedostosta" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:121 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:133 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:143 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:153 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:164 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:174 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:184 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:204 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:214 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:225 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:236 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:269 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:280 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:290 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:300 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Lue metatiedot %s -tiedostoista" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Lue metatiedot RAR-arkiston e-kirjoista" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:311 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Lue metatiedot ZIP-arkiston e-kirjoista" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:322 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:332 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:342 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:364 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:375 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:385 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Aseta metatiedot %s -tiedostoille" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:353 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Aseta metatiedot %s -tiedostoista" @@ -267,11 +273,11 @@ msgstr "" "luettava. Ei vaikuta välttämättä muiden tulokseen vaikuttavien lisäosien " "toimintaan." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:44 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:45 msgid "Input profile" msgstr "Syöttöprofiili" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:48 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:49 msgid "" "This profile tries to provide sane defaults and is useful if you know " "nothing about the input document." @@ -279,84 +285,84 @@ msgstr "" "Tämä profiili yrittää tarjota järkevät esiasetukset ja on käyttökelpoinen " "jos et tiedä mitään syötettävästä dokumentista." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:56 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" "Tämä profiili on tarkoitettu SONY PRS -laitteille, esim. 500/505/600/700 jne." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:68 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:69 msgid "This profile is intended for the SONY PRS 300." msgstr "Tämä profiili on tarkoitettu SONY PRS-300 -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:77 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:277 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Tämä profiili on tarkoitettu SONY PRS-900 -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:85 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:307 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Tämä profiili on tarkoitettu Microsoft Reader -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:96 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:318 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Tämä profiili on tarkoitettu Mobipocket-kirjoille." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:109 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "" "Tämä profiili on tarkoitettu Hanlin V3 -laitteelle ja sen klooneille." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:121 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:343 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "" "Tämä profiili on tarkoitettu Hanlin V5 -laitteelle ja sen klooneille." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:131 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Tämä profiili on tarkoitettu Cybook G3 -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:144 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:364 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Tämä profiili on tarkoitettu Cybook Opus -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:156 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Tämä profiili on tarkoitettu Amazon Kindle -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:168 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:408 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Tämä profiili on tarkoitettu Irex Illiad -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:421 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Tämä profiili on tarkoitettu IRex Digital Reader 1000 -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:193 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:435 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Tämä profiili on tarkoitettu IRex Digital Reader 800 -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:205 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:449 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Tämä profiili on tarkoitettu B&N Nook -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:225 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Tulosprofiili" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:229 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -366,15 +372,26 @@ msgstr "" "jos haluat tuottaa dokumentin luettavaksi tietokoneella tai erilaisilla " "laitteilla." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:268 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 +msgid "" +"Intended for the iPad and similar devices with a resolution of 768x1024" +msgstr "" +"Tarkoitettu iPadille ja vastaaville laitteille, joiden näyttötarkkuus on " +"768x1024" + +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 +msgid "This profile is intended for the Kobo Reader." +msgstr "Tämä profiili on tarkoitettu Kobo Readerille." + +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Tämä profiili on tarkoitettu SONY PRS-300 -laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:286 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Tämä profiili on tarkoitettu 5-tuumaiselle JetBook-laitteelle." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:295 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -382,7 +399,7 @@ msgstr "" "Tämä profiili on tarkoitettu SONY PRS -laitteille, esim. 500/505/700 jne, " "vaakatasossa käytettäväksi. Käyttökelpoinen etenkin sarjakuville." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:392 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Tämä profiili on tarkoitettu Amazon Kindle DX -laitteelle." @@ -402,15 +419,19 @@ msgstr "Paikallisten lisäosien säätö" msgid "Disabled plugins" msgstr "Käytöstä poistetut lisäosat" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:77 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 +msgid "Enabled plugins" +msgstr "Käytössä olevat pluginit" + +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " msgstr "Sopivaa lisäosaa ei löydetty " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:460 msgid "Initialization of plugin %s failed with traceback:" msgstr "%s lisäosan alustaminen epäonnistui:" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:420 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:493 msgid "" " %prog options\n" "\n" @@ -422,17 +443,17 @@ msgstr "" " Säädä calibrea lataamalla ulkoisia lisäosia.\n" " " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:426 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:499 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "Lisää lisäosa määrittämällä sen sisältävän zip-tiedoston polku." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:428 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:501 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" "Poista valinnainen lisäosa nimen perusteella. Ei vaikuta " "sisäänrakennettuihin lisäosiin" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:430 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:503 msgid "" "Customize plugin. Specify name of plugin and customization string separated " "by a comma." @@ -440,15 +461,15 @@ msgstr "" "Säädä lisäosaa. Määritä lisäosan nimi ja säädöksen käskyjono pilkulla " "erotettuna." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:432 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:505 msgid "List all installed plugins" msgstr "Listaa kaikki asennetut lisäosat" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:507 msgid "Enable the named plugin" msgstr "Salli nimetty lisäosa" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:436 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:509 msgid "Disable the named plugin" msgstr "Poista nimetty lisäosa käytöstä" @@ -456,7 +477,7 @@ msgstr "Poista nimetty lisäosa käytöstä" msgid "Communicate with Android phones." msgstr "Kommunikoi Android-puhelinten kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:35 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -464,6 +485,80 @@ msgstr "" "Pilkulla eroteltu lista laitteen hakemistoista, joihin e-kirjat lähetetään. " "Ensimmäistä olemassaolevaa käytetään" +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 +msgid "Communicate with S60 phones." +msgstr "Kommunikoi S60-puhelimien kanssa." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 +msgid "Apple device detected, launching iTunes, please wait ..." +msgstr "Apple-laite havaittu, ladataan iTunes, odota hetki..." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 +msgid "Updating device metadata listing..." +msgstr "Päivittää laitteen metatietolistausta..." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 +msgid "%d of %d" +msgstr "%d %d:stä" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 +msgid "finished" +msgstr "Valmis" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Käytä Sarjaa kategoriana iTunesissa/iBooksissa" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 +msgid "" +"Some books not found in iTunes database.\n" +"Delete using the iBooks app.\n" +"Click 'Show Details' for a list." +msgstr "" +"Kaikkia kirjoja ei löydetty iTunes-tietokannasta.\n" +"Poista iBooks-sovelluksella.\n" +"Valitse 'Näytä yksityiskohdat' nähdäksesi listan." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 +msgid "" +"Some cover art could not be converted.\n" +"Click 'Show Details' for a list." +msgstr "" +"Osaa kansitaiteesta ei voitu kääntää.\n" +"Valitse 'Näytä yksityiskohdat' nähdäksesi listan." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:167 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:180 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 +msgid "News" +msgstr "Uutiset" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Kommunikoi iTunesin kanssa." + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Kommunikoi Binatone Readme eBook -lukijan kanssa." @@ -486,35 +581,77 @@ msgstr "Kommunikoi Cybook Gen 3 / Opus eBook -lukijoiden kanssa." msgid "Communicate with the EB600 eBook reader." msgstr "Kommunikoi EB600-lukijan kanssa." +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Kommunikoi Astak Mentor EB600:n kanssa" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 +msgid "Communicate with the PocketBook 301 reader." +msgstr "Kommunikoi PocketBook 301 -lukijan kanssa." + #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" -msgstr "" +msgstr "Entourage Edge" #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:18 msgid "Communicate with the Entourage Edge." -msgstr "" +msgstr "Kommunikoi Entourage Edgen kanssa." #: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:16 msgid "Communicate with the ESlick eBook reader." msgstr "Kommunikoi ESlick-lukijan kanssa." +#: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:49 +msgid "Communicate with the Sigmatek eBook reader." +msgstr "Kommunikoi Sigmatek eBook -lukijan kanssa." + +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:16 +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:30 +msgid "Use an arbitrary folder as a device." +msgstr "Käytä kansiota laitteena." + +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:26 +#: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 +msgid "Device Interface" +msgstr "Laiterajapinta" + #: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:19 msgid "Communicate with Hanlin V3 eBook readers." msgstr "Kommunikoi Hanlin V3 -lukijoiden kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:95 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:87 msgid "Communicate with Hanlin V5 eBook readers." msgstr "Kommunikoi Hanlin V5 -lukijoiden kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:114 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:106 msgid "Communicate with the BOOX eBook reader." msgstr "Kommunikoi BOOX-lukijan kanssa." +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:121 +msgid "" +"Comma separated list of directories to send e-books to on the device. The " +"first one that exists will be used." +msgstr "" +"Pilkulla jaettu lista laitteen kansioista, joihin e-kirjat lähetetään. " +"Ensimmäistä olemassaolevaa käytetään." + #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." msgstr "Kommunikoi Hanvon N520 -lukijan kanssa." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:40 +msgid "Communicate with The Book reader." +msgstr "Kommunikoi The Book -lukijan kanssa." + +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:51 +msgid "Communicate with the SpringDesign Alex eBook reader." +msgstr "Kommunikoi SpringDesign Alex eBook -lukijan kanssa." + +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:67 +msgid "Communicate with the Azbooka" +msgstr "Kommunikoi Azbookan kanssa" + +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:80 msgid "Communicate with the Elonex EB 511 eBook reader." msgstr "Kommunikoi Elonex EB 511 -lukijan kanssa." @@ -524,14 +661,10 @@ msgstr "Kommunikoi IRex Iliad -lukijan kanssa." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:17 #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:18 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:29 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:38 msgid "John Schember" msgstr "John Schember" -#: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 -msgid "Device Interface" -msgstr "Laiterajapinta" - #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:16 msgid "Communicate with the IRex Digital Reader 1000 eBook reader." msgstr "Kommunikoi IRex Digital Reader 1000 -lukijan kanssa." @@ -548,18 +681,68 @@ msgstr "Kommunikoi Iriver Story -lukijan kanssa." msgid "Communicate with the JetBook eBook reader." msgstr "Kommunikoi JetBook-lukijan kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:21 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:42 msgid "Communicate with the Kindle eBook reader." msgstr "Kommunikoi Kindle-lukijan kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:147 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:169 msgid "Communicate with the Kindle 2 eBook reader." msgstr "Kommunikoi Kindle 2 -lukijan kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:210 msgid "Communicate with the Kindle DX eBook reader." msgstr "Kommunikoi Kindle DX -lukijan kanssa." +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 +msgid "Communicate with the Kobo Reader" +msgstr "Kommunikoi Kobo Readerin kanssa" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Haetaan listaa laitteella olevista kirjoista..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Poistetaan kirjoja laitteelta..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Poistetaan kirjoja laitteen metatietolistasta..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Lisätään kirjoja laitteen metatietolistaan..." + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 +msgid "Communicate with the Palm Pre" +msgstr "Kommunikoi Palm Pren kanssa" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:35 +msgid "Communicate with the Booq Avant" +msgstr "Kommunikoi Booq Avantin kanssa" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Kommunikoi Sweex MM300:n kanssa" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Kommunikoi Nokia 770 internet tablet -laitteen kanssa." @@ -568,6 +751,10 @@ msgstr "Kommunikoi Nokia 770 internet tablet -laitteen kanssa." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Kommunikoi Nokia 810 internet tablet -laitteen kanssa." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "Nook" @@ -584,25 +771,11 @@ msgstr "Kommunikoi Nuut2-lukijan kanssa." msgid "Communicate with the Sony PRS-500 eBook reader." msgstr "Kommunikoi Sony PRS-500 -lukijan kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:150 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:102 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:105 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:108 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:119 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:44 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:47 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:50 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:80 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:89 -msgid "Getting list of books on device..." -msgstr "Haetaan listaa laitteella olevista kirjoista..." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:22 +msgid "Communicate with all the Sony eBook readers." +msgstr "Kommunikoi kaikkien Sony eBook -lukijoiden kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:26 -msgid "Communicate with the Sony PRS-300/505/500 eBook reader." -msgstr "Kommunikoi Sony PRS-300/505/500 -lukijoiden kanssa." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:58 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " @@ -610,38 +783,28 @@ msgstr "" "Pilkun erottama lista metatietokentistä, jotka muutetaan kokoelmiksi " "laitteella. Vaihtoehtoja ovat: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:139 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:141 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:115 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:117 -msgid "Transferring books to device..." -msgstr "Siirretään kirjoja laitteelle..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:179 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:186 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:144 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:161 -msgid "Removing books from device..." -msgstr "Poistetaan kirjoja laitteelta..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:212 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:176 -msgid "Sending metadata to device..." -msgstr "Lähetetään metatietoja laitteelle..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:218 -msgid "Communicate with the Sony PRS-600/700/900 eBook reader." -msgstr "Kommunikoi Sony PRS-600/700/900 -lukijoiden kanssa." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 +msgid "Unnamed" +msgstr "Nimeämätön" #: /home/kovid/work/calibre/src/calibre/devices/sne/driver.py:17 msgid "Communicate with the Samsung SNE eBook reader." -msgstr "" +msgstr "Kommunikoi Samsung SNE eBook -lukijan kanssa." #: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:11 msgid "Communicate with the Teclast K3 reader." msgstr "Kommunikoi Teclast K3 -lukijan kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:252 +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:37 +msgid "Communicate with the Newsmy reader." +msgstr "Kommunikoi Newsmy-lukijan kanssa." + +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:49 +msgid "Communicate with the iPapyrus reader." +msgstr "Kommunikoi iPapyrus-lukijan kanssa." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "Levyasemaa %s ei havaittu. Kokeile uudelleenkäynnistämistä." @@ -678,72 +841,65 @@ msgstr "Lukijan tässä korttipaikassa ei ole muistikorttia." msgid "Selected slot: %s is not supported." msgstr "Valittu korttipaikka: %s ei ole tuettu." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "Päämuistissa ei ole tarpeeksi vapaata tilaa" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:779 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:781 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "Muistikortilla ei ole riittävästi vapaata tilaa" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:811 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:817 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:839 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:589 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:995 -msgid "News" -msgstr "Uutiset" - #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:12 msgid "Configure Device" msgstr "Konfiguroi laite" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 msgid "settings for device drivers" msgstr "laiteajurien asetukset" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 msgid "Ordered list of formats the device will accept" msgstr "Tilattu lista laitteen hyväksymistä formaateista" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "Aseta tiedostot alihakemistoihin, mikäli laite tukee niitä" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Lue metatiedot laitteella olevista tiedostoista" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 +msgid "Use author sort instead of author" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Kontrollimalli, jonka mukaan kirjat tallennetaan" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Lisäasetukset" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:28 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:37 msgid "Communicate with an eBook reader." msgstr "Kommunikoi lukijan kanssa." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:53 msgid "Get device information..." msgstr "Haetaan laitetietoja..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:132 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:140 -msgid "Adding books to device metadata listing..." -msgstr "Lisätään kirjoja laitteen metatietolistaan..." +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 +msgid "Transferring books to device..." +msgstr "Siirretään kirjoja laitteelle..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:165 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:170 -msgid "Removing books from device metadata listing..." -msgstr "Poistetaan kirjoja laitteen metatietolistasta..." +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 +msgid "Sending metadata to device..." +msgstr "Lähetetään metatietoja laitteelle..." #: /home/kovid/work/calibre/src/calibre/ebooks/chm/reader.py:41 msgid "%prog [options] mybook.chm" @@ -935,8 +1091,8 @@ msgstr "Älä käytä mitään prosessointia kuvaan" msgid "Do not convert the image to grayscale (black and white)" msgstr "Älä muunna kuvaa mustavalkoiseksi" -#: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:445 -#: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:456 +#: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:452 +#: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:463 msgid "Page" msgstr "Sivu" @@ -998,19 +1154,19 @@ msgstr "Valinnat, jotka kontrolloivat input %s tiedoston prosessointia" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:104 msgid "OUTPUT OPTIONS" -msgstr "" +msgstr "ULOSTULO-ASETUKSET" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:105 msgid "Options to control the processing of the output %s" -msgstr "" +msgstr "Asetukset, joilla kontrolloidaan ulostulo %s prosessointia" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:119 msgid "Options to control the look and feel of the output" -msgstr "" +msgstr "Asetukset, joilla kontrolloidaan ulostulon ulkoasua" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:135 msgid "Control auto-detection of document structure." -msgstr "" +msgstr "Kontrolloi asiakirjan rakenteen automaattista tunnistusta." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" @@ -1018,14 +1174,17 @@ msgid "" "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" +"Kontrolloi Sisällysluettelon automaattista luomista. Oletuksena, jos " +"lähdetiedostolla on Sisällysluettelo, sitä käytetään automaattisesti luodun " +"sijaan." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:155 msgid "Options to set metadata in the output" -msgstr "" +msgstr "Asetukset ulostulon metatiedoille" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:158 msgid "Options to help with debugging the conversion" -msgstr "" +msgstr "Asetukset, joilla käännöksen debuggausta helpotetaan" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:183 msgid "List builtin recipes" @@ -1033,36 +1192,45 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:256 msgid "Output saved to" -msgstr "" +msgstr "Ulostulo tallennettu osoitteeseen" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:95 msgid "Level of verbosity. Specify multiple times for greater verbosity." -msgstr "" +msgstr "Sanojen määrä. Aseta useampikertaiseksi jos haluat lisää." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:101 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:102 msgid "" "Save the output from different stages of the conversion pipeline to the " "specified directory. Useful if you are unsure at which stage of the " "conversion process a bug is occurring." msgstr "" +"Tallenna käännöksen eri vaiheiden tulos määriteltyyn kansioon. " +"Käytännöllinen jos olet epävarma missä vaiheessa käännöstä virhe tapahtuu." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:111 msgid "" "Specify the input profile. The input profile gives the conversion system " "information on how to interpret various information in the input document. " "For example resolution dependent lengths (i.e. lengths in pixels). Choices " "are:" msgstr "" +"Määritä syöttöprofiili. Syöttöprofiili antaa käännökselle järjestelmätiedot, " +"joiden perusteella lukuisat syöttödokumentit tulkitaan. Esimerkiksi " +"resoluution pituus (eli pituus pikseleinä). Vaihtoehdot ovat:" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:121 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:122 msgid "" "Specify the output profile. The output profile tells the conversion system " "how to optimize the created document for the specified device. In some " "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 "" +"Määritä tulosprofiili. Tulosprofiili antaa käännökselle järjestelmätiedot, " +"joiden perusteella luodut dokumentit optimoidaan laitekohtaisesti. Joissain " +"tapauksissa tulosprofiili vaaditaan laitteella toimivan dokumentin " +"tuottamiseksi. Esimerkiki EPUB Sony Reader -laitteilla. Vaihtoehdot ovat:" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:132 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:133 msgid "" "The base font size in pts. All font sizes in the produced book will be " "rescaled based on this size. By choosing a larger size you can make the " @@ -1070,7 +1238,7 @@ msgid "" "chosen based on the output profile you chose." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:142 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:143 msgid "" "Mapping from CSS font names to font sizes in pts. An example setting is " "12,12,14,16,18,20,22,24. These are the mappings for the sizes xx-small to xx-" @@ -1079,17 +1247,17 @@ msgid "" "use a mapping based on the output profile you chose." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:154 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:155 msgid "Disable all rescaling of font sizes." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:161 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:162 msgid "" "The line height in pts. Controls spacing between consecutive lines of text. " "By default no line height manipulation is performed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:170 msgid "" "Some badly designed documents use tables to control the layout of text on " "the page. When converted these documents often have text that runs off the " @@ -1097,58 +1265,58 @@ msgid "" "tables and present it in a linear fashion." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:180 msgid "" "XPath expression that specifies all tags that should be added to the Table " "of Contents at level one. If this is specified, it takes precedence over " "other forms of auto-detection." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:189 msgid "" "XPath expression that specifies all tags that should be added to the Table " "of Contents at level two. Each entry is added under the previous level one " "entry." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:196 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:197 msgid "" "XPath expression that specifies all tags that should be added to the Table " "of Contents at level three. Each entry is added under the previous level two " "entry." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:204 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:205 msgid "" "Normally, if the source file already has a Table of Contents, it is used in " "preference to the auto-generated one. With this option, the auto-generated " "one is always used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:212 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:213 msgid "Don't add auto-detected chapters to the Table of Contents." msgstr "Älä lisää automaattisesti havaittuja lukuja sisällysluetteloon." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:219 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:220 msgid "" "If fewer than this number of chapters is detected, then links are added to " "the Table of Contents. Default: %default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:226 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:227 msgid "" "Maximum number of links to insert into the TOC. Set to 0 to disable. Default " "is: %default. Links are only added to the TOC if less than the threshold " "number of chapters were detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:234 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:235 msgid "" "Remove entries from the Table of Contents whose titles match the specified " "regular expression. Matching entries and all their children are removed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:245 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:246 msgid "" "An XPath expression to detect chapter titles. The default is to consider " "

    or

    tags that contain the words \"chapter\",\"book\",\"section\" or " @@ -1158,7 +1326,7 @@ msgid "" "User Manual for further help on using this feature." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:260 msgid "" "Specify how to mark detected chapters. A value of \"pagebreak\" will insert " "page breaks before chapters. A value of \"rule\" will insert a line before " @@ -1166,66 +1334,68 @@ msgid "" "\"both\" will use both page breaks and lines to mark chapters." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:269 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:270 msgid "" "Either the path to a CSS stylesheet or raw CSS. This CSS will be appended to " "the style rules from the source file, so it can be used to override those " "rules." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:278 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:279 msgid "" "An XPath expression. Page breaks are inserted before the specified elements." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:284 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:285 msgid "" "Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:289 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:290 msgid "" "Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:294 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:295 msgid "" "Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:299 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:300 msgid "" "Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:304 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:306 msgid "" -"Do not force text to be justified in output. Whether text is actually " -"displayed justified or not depends on whether the ebook format and reading " -"device support justification." +"Change text justification. A value of \"left\" converts all justified text " +"in the source to left aligned (i.e. unjustified) text. A value of " +"\"justify\" converts all unjustified text to justified. A value of " +"\"original\" (the default) does not change justification in the source file. " +"Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:311 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:316 msgid "" "Remove spacing between paragraphs. Also sets an indent on paragraphs of " "1.5em. Spacing removal will not work if the source file does not use " "paragraphs (

    or

    tags)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:318 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:323 msgid "" "When calibre removes inter paragraph spacing, it automatically sets a " "paragraph indent, to ensure that paragraphs can be easily distinguished. " "This option controls the width of that indent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 msgid "" "Use the cover detected from the source file in preference to the specified " "cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:331 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:336 msgid "" "Insert a blank line between paragraphs. Will not work if the source file " "does not use paragraphs (

    or

    tags)." @@ -1233,47 +1403,47 @@ msgstr "" "Lisää tyhjä rivi kappaleiden väliin. Ei toimi, jos lähdetiedosto ei käytä " "kappaleita (

    tai

    -tageja)." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:338 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:343 msgid "" "Remove the first image from the input ebook. Useful if the first image in " "the source file is a cover and you are specifying an external cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:346 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 msgid "" "Insert the book metadata at the start of the book. This is useful if your " "ebook reader does not support displaying/searching metadata directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:354 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:359 msgid "" "Attempt to detect and correct hard line breaks and other problems in the " "source file. This may make things worse, so use with care." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:362 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:367 msgid "Use a regular expression to try and remove the header." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:369 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:374 msgid "The regular expression to use to remove the header." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:375 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:380 msgid "Use a regular expression to try and remove the footer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:387 msgid "The regular expression to use to remove the footer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:389 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:394 msgid "" "Read metadata from the specified OPF file. Metadata read from this file will " "override any metadata in the source file." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:401 msgid "" "Transliterate unicode characters to an ASCII representation. Use with care " "because this will replace unicode characters with ASCII. For instance it " @@ -1283,111 +1453,121 @@ msgid "" "number of people will be used (Chinese in the previous example)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:411 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:416 +msgid "" +"Preserve ligatures present in the input document. A ligature is a special " +"rendering of a pair of characters like ff, fi, fl et cetera. Most readers do " +"not have support for ligatures in their default fonts, so they are unlikely " +"to render correctly. By default, calibre will turn a ligature into the " +"corresponding pair of normal characters. This option will preserve them " +"instead." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:38 msgid "Set the title." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:415 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:432 msgid "Set the authors. Multiple authors should be separated by ampersands." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:420 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:437 msgid "The version of the title to be used for sorting. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:424 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:441 msgid "String to be used when sorting by author. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:428 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:445 msgid "Set the cover to the specified file or URL" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:432 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:449 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:54 msgid "Set the ebook description." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:436 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:453 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:56 msgid "Set the ebook publisher." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:440 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:457 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:60 msgid "Set the series this ebook belongs to." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:444 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:461 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:62 msgid "Set the index of the book in this series." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:448 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:465 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:64 msgid "Set the rating. Should be a number between 1 and 5." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:452 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:469 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:66 msgid "Set the ISBN of the book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:456 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:473 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:68 msgid "Set the tags for the book. Should be a comma separated list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:460 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:477 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:70 msgid "Set the book producer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:464 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:481 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:72 msgid "Set the language." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:468 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:485 msgid "Set the publication date." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:472 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:489 msgid "Set the book timestamp (used by the date column in calibre)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:572 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:589 msgid "Could not find an ebook inside the archive" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:630 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:647 msgid "Values of series index and rating must be numbers. Ignoring" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:637 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:654 msgid "Failed to parse date/time" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:781 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:809 msgid "Converting input to HTML..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:808 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:836 msgid "Running transforms on ebook..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:895 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:923 msgid "Creating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:58 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:56 msgid "" "Extract the contents of the generated EPUB file to the specified directory. " "The contents of the directory are first deleted, so be careful." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:62 msgid "" "Turn off splitting at page breaks. Normally, input files are automatically " "split at every page break into two files. This gives an output ebook that " @@ -1396,20 +1576,41 @@ msgid "" "turn off splitting on page breaks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:75 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:73 msgid "" "Split all HTML files larger than this size (in KB). This is necessary as " "most EPUB readers cannot handle large file sizes. The default of %defaultKB " "is the size required for Adobe Digital Editions." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:82 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:80 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/epub/output.py:86 +msgid "" +"Do not use SVG for the book cover. Use this option if your EPUB is going to " +"be used on a device that does not support SVG, like the iPhone or the " +"JetBook Lite. Without this option, such devices will display the cover as a " +"blank page." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 +msgid "" +"When using an SVG cover, this option will cause the cover to scale to cover " +"the available screen area, but still preserve its aspect ratio (ratio of " +"width to height). That means there may be white borders at the sides or top " +"and bottom of the image, but the image will never be distorted. Without this " +"option the image may be slightly distorted, but there will be no borders." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:169 +msgid "Start" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:144 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:102 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1428,20 +1629,20 @@ msgstr "" msgid "Add Table of Contents to beginning of the book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " "Default is %default." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1449,7 +1650,7 @@ msgid "" "pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1582,7 +1783,7 @@ msgid "Path to output file" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "" @@ -1664,87 +1865,94 @@ msgstr "" msgid "Comic" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:363 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:411 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1154 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:364 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1155 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:365 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:177 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:366 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:100 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:372 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:361 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1099 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1158 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:96 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:179 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:95 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:378 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:380 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1098 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:175 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazon.py:76 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazon.py:85 msgid "EDITORIAL REVIEW" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41 msgid "" "Extract common e-book formats from archives (zip/rar) files. Also try to " "autodetect if they are actually cbz/cbr files." @@ -1843,6 +2051,14 @@ msgstr "" msgid "No cover found" msgstr "" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "" @@ -1863,25 +2079,29 @@ msgstr "" msgid "Download %s from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:137 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:153 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:189 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -1895,50 +2115,51 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1094 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "" @@ -1973,74 +2194,78 @@ msgstr "" msgid "All articles" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:258 +msgid "This is an Amazon Topaz book. It cannot be processed." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:39 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:41 msgid "%s format books are not supported" msgstr "" @@ -2048,7 +2273,7 @@ msgstr "" msgid "HTML TOC generation options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:113 msgid "Book Jacket" msgstr "" @@ -2057,10 +2282,6 @@ msgid "" "Could not find reasonable point at which to split: %s Sub-tree size: %d KB" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 -msgid "Unnamed" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:32 msgid "OPF/NCX/etc. generation options." msgstr "" @@ -2084,7 +2305,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:22 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:23 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:23 msgid "" "Normally calibre treats blank lines as paragraph markers. With this option " "it will assume that every line represents a paragraph instead." @@ -2092,7 +2313,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:26 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:27 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:27 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+ " @@ -2221,6 +2442,8 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author" msgstr "" @@ -2320,6 +2543,12 @@ msgstr "" msgid "The orientation of the page. Default is portrait. Choices are %s" msgstr "" +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:49 +msgid "" +"Preserve the aspect ratio of the cover, instead of stretching it to fill the " +"ull first page of the generated pdf." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/pdftohtml.py:55 msgid "Could not find pdftohtml, check it is in your PATH" msgstr "" @@ -2348,13 +2577,19 @@ msgid "" "slowest." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:32 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:33 +msgid "" +"Normally extra spaces are condensed into a single space. With this option " +"all spaces will be displayed." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:36 msgid "" "Run the text input through the markdown pre-processor. To learn more about " "markdown see" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:35 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:39 msgid "Do not insert a Table of Contents into the output text." msgstr "" @@ -2385,191 +2620,783 @@ msgid "" "allows max-line-length to be below the minimum" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:33 msgid "Send file to storage card instead of main memory by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:35 msgid "Confirm before deleting" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:37 msgid "Toolbar icon size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:39 msgid "Show button labels in the toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:41 msgid "Main window geometry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:43 msgid "Notify when a new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:45 msgid "Use Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:45 -msgid "Sort tags list by popularity" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:47 -msgid "Number of covers to show in the cover browsing mode" +msgid "Sort tags list by name, popularity, or rating" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 -msgid "Defaults for conversion to LRF" +msgid "Number of covers to show in the cover browsing mode" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:51 +msgid "Defaults for conversion to LRF" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:53 msgid "Options for the LRF ebook viewer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:56 msgid "Formats that are viewed using the internal viewer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:58 msgid "Columns to be displayed in the book list" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:59 msgid "Automatically launch content server on application startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:60 msgid "Oldest news kept in database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:61 msgid "Show system tray icon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 msgid "Upload downloaded news to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 msgid "Delete books from library after uploading to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 msgid "" "Show the cover flow in a separate window instead of in the main calibre " "window" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 msgid "Disable notifications from the system tray icon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71 msgid "Default action to perform when send to device button is clicked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 msgid "Maximum number of waiting worker processes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95 msgid "Download social metadata (tags/rating/etc.)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97 msgid "Overwrite author and title with new metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99 msgid "Limit max simultaneous jobs to number of CPUs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101 +msgid "tag browser categories not to display" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103 +msgid "The layout of the user interface" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105 +msgid "Show the average rating per item indication in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 +msgid "Use library only" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 +msgid "User annotations generated from main library only" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 +msgid "No books selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 +msgid "No books selected to fetch annotations from" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 +msgid "Merging user annotations into database" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 +msgid "%s
    Last Page Read: %d (%d%%)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 +msgid "%s
    Last Page Read: Location %d (%d%%)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 +msgid "Location %d • %s
    %s
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 +msgid "Page %d • %s
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 +msgid "Location %d • %s
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 +msgid "How many empty books?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 +msgid "How many empty books should be added?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 +msgid "Uploading books to device." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 +msgid "Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +msgid "EPUB Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +msgid "LRF Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +msgid "HTML Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +msgid "LIT Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +msgid "MOBI Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +msgid "Topaz books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +msgid "Text books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 +msgid "PDF Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 +msgid "Comics" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 +msgid "Archives" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 +msgid "Supported books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 +msgid "Merged some books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 +msgid "" +"Some duplicates were found and merged into the following existing books:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 +msgid "Failed to read metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 +msgid "Failed to read metadata from the following" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "Add to library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 +msgid "No book selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "No book files found" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 +msgid "Cannot delete" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 +msgid "Choose formats to be deleted" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 +msgid "Choose formats not to be deleted" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 +msgid "Cannot delete books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 +msgid "No device is connected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 +msgid "Main memory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 +msgid "Storage Card A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 +msgid "Storage Card B" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 +msgid "No books to delete" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 +msgid "None of the selected books are on the device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 +msgid "Deleting books from device." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 +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/actions.py:586 +msgid "" +"The selected books will be permanently deleted from your device. Are " +"you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 +msgid "Cannot download metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 +msgid "social metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "covers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 +msgid "Downloading %s for %d book(s)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 +msgid "Failed to download some metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 +msgid "Failed to download metadata for the following:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 +msgid "Failed to download metadata:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 +#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 +msgid "Error" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 +msgid "Cannot edit metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 +msgid "Cannot merge books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 +msgid "At least two books must be selected for merging" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 +msgid "" +"All book formats and metadata from the selected books will be added to the " +"first selected book.

    The second and subsequently selected " +"books will not be deleted or changed.

    Please confirm you want to " +"proceed." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 +msgid "" +"All book formats and metadata from the selected books will be merged into " +"the first selected book.

    After merger the second and " +"subsequently selected books will be deleted.

    All book formats " +"of the first selected book will be kept and any duplicate formats in the " +"second and subsequently selected books will be permanently deleted " +"from your computer.

    Are you sure you want to proceed?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 +msgid "" +"You are about to merge more than 5 books. Are you sure you want to " +"proceed?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 +msgid "Cannot save to disk" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 +msgid "Choose destination directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 +msgid "Error while saving" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 +msgid "There was an error while saving." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 +msgid "Could not save some books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 +msgid "Click the show details button to see which ones." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +msgid "No books selected to generate catalog for" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 +msgid "Generating %s catalog..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 +msgid "No books found" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 +msgid "" +"No books to catalog\n" +"Check exclude tags" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 +msgid "Catalog generated." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 +msgid "Export Catalog Directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 +msgid "Select destination for %s.%s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 +msgid "Fetching news from " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 +msgid " fetched." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 +msgid "Cannot convert" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 +msgid "Starting conversion of %d book(s)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 +msgid "Cannot view" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 +msgid "Choose the format to view" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 +msgid "Multiple Books Selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 +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/actions.py:1228 +msgid "Cannot open folder" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 +msgid "%s has no available formats." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/add.py:54 msgid "Searching in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:252 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:257 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1693 -msgid "No books found" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:349 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:419 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:472 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:57 +msgid "Searching for sub-folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:62 +msgid "Searching for books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:74 +msgid "Looking for duplicates based on file hash" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:65 +msgid "Choose root folder" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:137 +msgid "Invalid root folder" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:138 +msgid "is not a valid root folder" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:148 +msgid "Add books to calibre" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:21 +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:57 +#: /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:49 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 +msgid "WizardPage" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:22 +msgid "Scanning root folder for books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:23 +msgid "This may take a few minutes" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:58 +msgid "Choose the location to add books from" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:59 +msgid "Select a folder on your hard disk" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:60 +msgid "" +"

    calibre can scan your computer for existing books automatically. These " +"books will then be copied into the calibre library. This wizard will " +"help you customize the scanning and import process for your existing book " +"collection.

    \n" +"

    Choose a root folder. Books will be searched for only inside this folder " +"and any sub-folders.

    \n" +"

    Make sure that the folder you chose for your calibre library is " +"not under the root folder you choose.

    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:63 +msgid "&Root folder:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:64 +msgid "" +"This folder and its sub-folders will be scanned for books to import into " +"calibre's library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:66 +#: /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/look_and_feel_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:166 +#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:77 +#: /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:254 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:265 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 +msgid "..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:67 +msgid "Handle multiple files per book" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:68 +msgid "" +"&One book per folder, assumes every ebook file in a folder is the same book " +"in a different format" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:69 +msgid "" +"&Multiple books per folder, assumes every ebook file is a different book" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 +msgid "Path" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 +msgid "Formats" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 +msgid "Collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 +msgid "Click to open" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 +msgid "None" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 +msgid "Click to open Book Details window" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml.py:16 msgid "CSV/XML Options" msgstr "" @@ -2605,31 +3432,31 @@ msgstr "" msgid "output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:36 -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:68 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:88 #: /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/epub_output_ui.py:48 #: /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 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:38 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:42 #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/save_template_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106 @@ -2637,7 +3464,7 @@ msgstr "" msgid "Form" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:38 msgid "Fields to include in output:" msgstr "" @@ -2646,29 +3473,29 @@ msgid "E-book options" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:958 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:976 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:69 msgid "'Don't include this book' tag:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:70 msgid "'Mark this book as read' tag:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:71 msgid "Additional note tag prefix:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:72 msgid "Regex pattern describing tags to exclude as genres:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:73 msgid "" "Regex tips:\n" "- The default regex - \\[[\\w ]*\\] - excludes genre tags of the form [tag], " @@ -2677,15 +3504,15 @@ msgid "" "Genre Section" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:76 msgid "Include 'Titles' Section" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:77 msgid "Include 'Recently Added' Section" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:78 msgid "Sort numbers as text" msgstr "" @@ -2813,46 +3640,6 @@ msgid "" "conversion parameters like Table of Contents and Chapter Detection." msgstr "" -#: /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/look_and_feel_ui.py:124 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:508 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:522 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:523 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:540 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 -#: /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:362 -#: /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: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:391 -#: /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:398 -#: /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 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 -#: /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:359 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:361 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:373 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:74 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:180 -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 " @@ -2864,22 +3651,30 @@ msgstr "" msgid "EPUB Output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:49 msgid "Do not &split on page breaks" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:50 +msgid "No default &cover" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:51 +msgid "No &SVG cover" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:52 +msgid "Preserve cover &aspect ratio" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:53 msgid "Split files &larger than:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:44 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:54 msgid " KB" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:45 -msgid "No default &cover" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input.py:12 msgid "FB2 Input" msgstr "" @@ -2929,22 +3724,22 @@ msgid "&Base font size:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:123 msgid "Font size &key:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:112 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:121 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:127 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:125 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:120 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:124 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:127 msgid " pt" msgstr "" @@ -2976,51 +3771,59 @@ msgstr "" msgid "Control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 -msgid "&Disable font size rescaling" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:30 +msgid "Original" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:31 +msgid "Left align" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:32 +msgid "Justify text" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:120 +msgid "&Disable font size rescaling" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:121 msgid "Base &font size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:124 msgid "Wizard to help you choose an appropriate font size key" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:126 msgid "Line &height:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:128 msgid "Input character &encoding:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:128 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:129 msgid "Remove &spacing between paragraphs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:129 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:130 msgid "Indent size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:131 msgid "" "

    When calibre removes inter paragraph spacing, it automatically sets a " "paragraph indent, to ensure that paragraphs can be easily distinguished. " "This option controls the width of that indent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:132 msgid " em" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:132 -msgid "Insert &blank line" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:133 -msgid "No text &justification" +msgid "Text justification:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:134 @@ -3028,11 +3831,19 @@ msgid "&Linearize tables" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:135 -msgid "&Transliterate unicode characters to ASCII." +msgid "Extra &CSS" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:136 -msgid "Extra &CSS" +msgid "&Transliterate unicode characters to ASCII" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137 +msgid "Insert &blank line" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:138 +msgid "Keep &ligatures" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:19 @@ -3089,7 +3900,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:114 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:195 msgid "Metadata" msgstr "" @@ -3099,118 +3910,118 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

    There was an error reading from file:
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 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:393 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -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:394 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 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:395 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:354 -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:355 -msgid "Change the title of this book" +msgid "Use cover from &source file" 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:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 -msgid "&Author(s): " +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +msgid "&Title: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 -msgid "Author So&rt:" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +msgid "Change the title of this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +msgid "&Author(s): " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +msgid "Author So&rt:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" 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:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 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:368 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 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:154 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." 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:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Series:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 +#: /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 "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:379 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "" @@ -3258,35 +4069,35 @@ msgstr "" msgid "Page Setup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:116 msgid "&Output profile:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:117 msgid "Profile description" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:118 msgid "&Input profile:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:119 msgid "Margins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:120 msgid "&Left:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:122 msgid "&Top:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:124 msgid "&Right:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:126 msgid "&Bottom:" msgstr "" @@ -3295,12 +4106,12 @@ msgid "PDB Input" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:44 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -3328,39 +4139,34 @@ msgstr "" msgid "PDF Output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:40 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:43 msgid "&Paper Size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:44 msgid "&Orientation:" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:45 +msgid "Preserve &aspect ratio of cover" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output.py:14 msgid "RB Output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:85 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1938 -msgid "Choose the format to view" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "Cannot build regex using the GUI builder without a book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "No formats available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:100 msgid "Open book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:107 -msgid "~" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:52 msgid "Regex Builder" msgstr "" @@ -3429,12 +4235,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:71 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "" @@ -3518,21 +4324,25 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 +msgid "Preserve &spaces" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:16 msgid "TXT Output" msgstr "" @@ -3638,247 +4448,342 @@ msgid "" "href=\"http://calibre-ebook.com/user_manual/xpath.html\">XPath Tutorial." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:38 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:119 +msgid "Cover browser could not be loaded" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:171 +msgid "Browse by covers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:77 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:242 +msgid "Undefined" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:133 +msgid "Yes" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:134 +msgid "No" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:115 +msgid "star(s)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:116 +msgid "Unrated" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 +msgid "Remove all tags" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 +msgid "tags to add" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 +msgid "tags to remove" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:296 -msgid "and delete from library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:324 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:331 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:333 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 +msgid " and delete from library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:350 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:360 -msgid "Send specific format to main memory" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 +msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:362 -msgid "Send specific format to storage card A" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 +msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:364 -msgid "Send specific format to storage card B" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 +msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 +msgid "Connect to folder" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 +msgid "Error communicating with device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 +msgid "Select folder to open as device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 +msgid "Failed" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 +msgid "Error talking to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 +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/device.py:753 +msgid "Device: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 +msgid " detected." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 +msgid "Connected " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:534 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:535 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:585 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:629 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:636 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:788 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:904 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:911 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:655 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:699 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:729 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:789 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:905 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:758 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:819 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:960 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:961 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 msgid "Select available formats and their order for this device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:82 msgid "Use sub directories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83 +msgid "Use author sort for author" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85 msgid "Save &template:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:108 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:110 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:368 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1096 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 -msgid "Path" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:111 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:112 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:113 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Formats" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:68 msgid "Fit &cover to view" msgstr "" @@ -3925,11 +4830,11 @@ msgstr "" msgid "Choose Format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:33 msgid "Set defaults for conversion of comics (CBR/CBZ files)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 msgid "Set options for converting %s" msgstr "" @@ -3945,199 +4850,241 @@ msgstr "" msgid "&Profile:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog_ui.py:41 +msgid "Edit Comments" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:221 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:296 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:478 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:175 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1530 -#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 -msgid "Error" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:479 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 +msgid "Narrow" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 +msgid "System port selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 +msgid "" +"The value %d you have chosen for the content server port is a system " +"port. Your operating system may not allow the server to run on this " +"port. To be safe choose a port number larger than 1024." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:484 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 +msgid "You must select a column to delete it" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +msgid "The selected column is not a custom column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 +msgid "Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 +msgid "Do you really want to delete column %s and all its data?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:649 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:677 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:692 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:701 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:709 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:710 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:764 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:766 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:770 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:804 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 +msgid "Must restart" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 +msgid "" +"The changes you made require that Calibre be restarted. Please restart as " +"soon as practical." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:829 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:830 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4145,35 +5092,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -4181,326 +5128,380 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:505 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:512 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:513 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:514 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:515 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:519 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:527 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +msgid "Show &splash screen at startup" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +msgid "Show &average ratings in the tags browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:529 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:537 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 +msgid "Remove a user-defined column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +msgid "Add a user-defined column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +msgid "Edit settings of a user-defined column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +msgid "User Interface &layout (needs restart):" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:545 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /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:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +msgid "Max. OPDS &ungrouped items:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -4511,33 +5512,33 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "" @@ -4565,16 +5566,6 @@ msgstr "" msgid "Values can be edited" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:133 -msgid "Yes" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:134 -msgid "No" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:135 msgid "Text" msgstr "" @@ -4584,8 +5575,11 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1157 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "" @@ -4601,6 +5595,132 @@ msgstr "" msgid "Create and edit tag-based columns" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:19 +msgid "Text, column shown in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:22 +msgid "Comma separated text, like tags, shown in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:25 +msgid "Long text, like comments, not shown in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 +msgid "Floating point numbers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 +msgid "Integers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +msgid "Ratings, shown with stars" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 +msgid "Yes/No" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 +msgid "No column selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 +msgid "No column has been selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 +msgid "Selected column is not a user-defined column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 +msgid "No lookup name was provided" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 +msgid "" +"The label must contain only letters, digits and underscores, and start with " +"a letter" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 +msgid "No column heading was provided" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 +msgid "The lookup name %s is already used" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 +msgid "The heading %s is already used" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 +msgid "" +"The lookup name must be lower case and cannot contain \":\"s or spaces" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:117 +msgid "Create or edit custom columns" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:102 +msgid "&Lookup name" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:103 +msgid "Column &heading" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:104 +msgid "" +"Used for searching the column. Must contain only digits and lower case " +"letters." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:105 +msgid "" +"Column heading in the library view and category name in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:106 +msgid "Column &type" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:107 +msgid "What kind of information will be kept in the column." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:108 +msgid "" +"

    Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " +"for year.

    \n" +"

    For example:\n" +"

      \n" +"
    • ddd, d MMM yyyy gives Mon, 5 Jan 2010
    • \n" +"
    • dd MMMM yy gives 05 January 10
    • \n" +"
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:114 +msgid "Use MMM yyyy for month + year, yyyy for year only" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:115 +msgid "Default: dd MMM yyyy." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:116 +msgid "Format for &dates" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/device_debug.py:21 msgid "Getting debug information" msgstr "" @@ -4642,60 +5762,77 @@ msgstr "" msgid "Downloading social metadata, please wait..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 -msgid "Are you sure?" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:50 msgid "&Show this warning again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/conversion_error_ui.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/conversion_error_ui.py:42 msgid "ERROR" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +msgid "Location" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 +msgid "Format" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 +msgid "Delete from device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 +msgid "Author sort" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 +msgid "Manage authors" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:85 msgid "Fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:85 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:86 msgid "" "

    calibre can find metadata for your books from two locations: Google " "Books and isbndb.com.

    To use isbndb.com you must sign up for a " @@ -4703,28 +5840,28 @@ msgid "" "below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:87 msgid "&Access Key:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:88 msgid "Fetch" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:89 msgid "Matches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:90 msgid "" "Select the book that most closely matches your copy from the list below" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:91 msgid "Download &social metadata (tags/rating/etc.) for the selected book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:92 msgid "Overwrite author and title with author and title of selected book" msgstr "" @@ -4748,79 +5885,78 @@ msgstr "" msgid "Stop &all jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:24 +msgid "Editing meta information for %d books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:157 msgid "Edit Meta information" 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:353 -msgid "Meta information" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:144 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:159 msgid "A&utomatically set author sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:160 msgid "Author s&ort: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 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:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 msgid "&Rating:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:148 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:149 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 +#: /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 "Rating of this book. 0-5 stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:165 msgid "No change" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 msgid " stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:168 msgid "Add ta&gs: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:155 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:156 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 +#: /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 "Open Tag Editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:157 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:172 msgid "&Remove tags:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:173 msgid "Comma separated list of tags to remove from the books. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:177 msgid "Remove &format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:178 msgid "&Swap title and author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:179 msgid "" "Selected books will be automatically numbered,\n" "in the order you selected them.\n" @@ -4828,8 +5964,25 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:168 -msgid "Automatically number books in this series" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 +msgid "" +"Remove stored conversion settings for the selected books.\n" +"\n" +"Future conversion of these books will use the default settings." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:187 +msgid "Remove &stored conversion settings for the selected books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +msgid "&Basic metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +msgid "&Custom metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 @@ -4840,11 +5993,6 @@ msgstr "" msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1276 -msgid "Books" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" @@ -4853,170 +6001,182 @@ msgstr "" msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:406 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:414 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:510 -msgid "Downloading cover..." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 +msgid "Cannot use tag editor" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:527 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +msgid "The tags editor cannot be used if you have modified the tags" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 +msgid "Downloading cover..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 msgid "Cannot fetch cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:523 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 msgid "Could not fetch cover.
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:540 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:674 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "" -#: /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:362 +msgid "Meta information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid "Swap the author and title" 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:368 msgid "Author S&ort: " 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:370 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:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /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:386 msgid "IS&BN:" msgstr "" -#: /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:387 msgid "Publishe&d:" 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:390 msgid "dd MMM yyyy" 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:391 msgid "&Date:" 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:392 msgid "&Comments" 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:393 msgid "&Fetch metadata from server" msgstr "" -#: /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:394 msgid "Available Formats" 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:395 msgid "Add a new format for this book to 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:397 msgid "Remove the selected formats for this book from the database." 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:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /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:401 msgid "Update metadata from the metadata in the selected format" 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:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "" @@ -5028,6 +6188,39 @@ msgstr "" msgid "Aborting..." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:54 +msgid "" +"The current saved search will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:83 +msgid "Saved Search Editor" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:84 +msgid "Saved Search: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:85 +msgid "Select a saved search to edit" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:86 +msgid "Delete this selected saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 +msgid "Enter a new saved search name." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 +msgid "Add the new saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 +msgid "Change the contents of the saved search" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:119 msgid "Need username and password" msgstr "" @@ -5053,7 +6246,7 @@ msgid "Last downloaded" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:216 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:192 msgid "Schedule news download" msgstr "" @@ -5061,123 +6254,127 @@ msgstr "" msgid "Add a custom news source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:224 +msgid "Download all scheduled new sources" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:321 msgid "No internet connection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:314 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:322 msgid "Cannot download news as no internet connection is active" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:191 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:193 #: /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:192 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:194 msgid "Download all scheduled recipes at once" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:195 msgid "Download &all scheduled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:196 msgid "blurb" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197 msgid "&Schedule for download:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:196 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:208 msgid "Every " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:199 msgid "day" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:200 msgid "Monday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:201 msgid "Tuesday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:202 msgid "Wednesday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:203 msgid "Thursday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204 msgid "Friday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:203 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:205 msgid "Saturday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:206 msgid "Sunday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:207 msgid "at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:209 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:208 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:222 #: /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:209 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:211 msgid "&Account" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:215 msgid "For the scheduling to work, you must leave calibre running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:216 msgid "&Schedule" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217 msgid "Add &title as tag" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218 msgid "&Extra tags:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219 msgid "&Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:220 msgid "&Download now" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:221 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:221 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:223 msgid "Delete downloaded news older than " msgstr "" @@ -5258,11 +6455,79 @@ msgstr "" msgid "Choose formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:76 +msgid "Authors" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:107 +msgid "Publishers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:110 +msgid " (not on any book)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:162 +msgid "" +"The current tag category will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:153 +msgid "User Categories Editor" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:154 +msgid "A&vailable items" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:155 +msgid "Apply tags to current tag category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:157 +msgid "A&pplied items" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:158 +msgid "Unapply (remove) tag from current tag category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:160 +msgid "Category name: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:161 +msgid "Select a category to edit" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:162 +msgid "Delete this selected tag category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:164 +msgid "Enter a new category name. Select the kind before adding it." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:165 +msgid "Add the new category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:167 +msgid "Category filter: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:168 +msgid "Select the content kind of the new category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:69 msgid "" "The following tags are used by one or more books. Are you certain you want " "to delete them?" @@ -5308,15 +6573,67 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:50 -msgid "Test email settings" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +msgid "Item is blank" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 +msgid "An item cannot be set to nothing. Delete it instead." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 +msgid "No item selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 +msgid "You must select one item from the list of Available items." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 +msgid "No items selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 +msgid "You must select at least one items from the list." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 +msgid "Are you certain you want to delete the following items?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:72 +msgid "Category Editor" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:73 +msgid "Items in use" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:74 +msgid "" +"Delete item from database. This will unapply the item from all books and " +"then remove it from the database." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:76 +msgid "Rename the item in every book where it is used." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:78 +msgid "Ctrl+S" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:51 -msgid "Send test mail from %s to:" +msgid "Test email settings" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:52 +msgid "Send test mail from %s to:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 msgid "&Test" msgstr "" @@ -5546,11 +6863,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:82 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:87 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:92 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "" @@ -5586,98 +6903,309 @@ msgstr "" msgid "Regular expression (?P)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:53 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:36 +msgid "Save single format to disk..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:52 +msgid "Edit metadata individually" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:55 +msgid "Edit metadata in bulk" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:58 +msgid "Download metadata and covers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 +msgid "Download only metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 +msgid "Download only covers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 +msgid "Download only social metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 +msgid "Merge into first selected book - delete others" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 +msgid "Merge into first selected book - keep others" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 +msgid "Add books from a single directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 +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/init.py:89 +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/init.py:92 +msgid "Add Empty book. (Book entry with no formats)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 +msgid "Save to disk" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 +msgid "Save to disk in a single directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 +msgid "Save only %s format to disk" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +msgid "Save only %s format to disk in a single directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 +msgid "View" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 +msgid "View specific format" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 +msgid "Remove selected books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 +msgid "Remove files of a specific format from selected books.." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 +msgid "Remove all formats from selected books, except..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 +msgid "Remove covers from selected books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 +msgid "Remove matching books from device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 +msgid "Convert individually" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 +msgid "Bulk convert" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 +msgid "Create catalog of books in your calibre library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 +msgid "Run welcome wizard" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 +msgid "Similar books..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 +msgid "Add books to library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 +msgid "Cover Browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 +msgid "Tag Browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 +msgid "Book Details" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:60 msgid "Job" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:61 msgid "Status" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:62 msgid "Progress" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:63 msgid "Running time" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:75 msgid "There are %d running jobs:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:72 #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:101 msgid "Unknown job" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:82 msgid "There are %d waiting jobs:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:211 -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:219 msgid "Cannot kill job" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:217 msgid "Cannot kill jobs that communicate with the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:220 msgid "Job has already run" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:248 msgid "Unavailable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:280 +msgid "Jobs:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:298 +msgid "Click to see list of active jobs." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:358 msgid " - Jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1156 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 +msgid "N" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 +msgid "Y" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 +msgid "On Device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:366 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:72 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:440 -msgid "None" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:894 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 +msgid "The lookup/search name is \"{0}\"" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 +msgid "In Library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 +msgid "Size" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 +msgid "Marked for deletion" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 +msgid "Double click to edit me

    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:110 +msgid "Hide column %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:115 +msgid "Sort on %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:116 +msgid "Ascending" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:119 +msgid "Descending" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:131 +msgid "Change text alignment for %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 +msgid "Left" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 +msgid "Right" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:134 +msgid "Center" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:153 +msgid "Show column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165 +msgid "Restore default layout" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:895 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 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:1095 -msgid "Format" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1146 -msgid "Double click to edit me

    " -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:47 msgid "Configure Viewer" msgstr "" @@ -5703,7 +7231,7 @@ msgid "No matches for the search phrase %s were found." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:433 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:440 msgid "No matches found" msgstr "" @@ -5720,20 +7248,22 @@ msgid "LRF Viewer toolbar" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:476 msgid "Next Page" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:477 msgid "Previous Page" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:133 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:188 msgid "Back" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:189 msgid "Forward" msgstr "" @@ -5742,7 +7272,7 @@ msgid "Next match" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:136 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:196 msgid "Open ebook" msgstr "" @@ -5750,206 +7280,269 @@ msgstr "" msgid "Configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:30 msgid "Use the library located at the specified path." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:27 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:32 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:29 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:34 msgid "Log debugging information to console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:36 msgid "Do not check for updates" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:595 +msgid "Calibre Library" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 -msgid "If you are sure it is not running" +msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:88 -msgid "Cannot Start " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:89 -msgid "%s is already running." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:92 -msgid "may be running in the system tray, in the" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 -msgid "upper right region of the screen." +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 +msgid "Failed to create library" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 -msgid "lower right region of the screen." +msgid "Failed to create calibre library at: %r." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 +msgid "Choose a location for your new calibre e-book library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 +msgid "Initializing user interface..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 +msgid "Repairing failed" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 +msgid "The database repair failed. Starting with a new empty library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 +msgid "Bad database location" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 +msgid "Bad database location %r. calibre will now quit." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 +msgid "Corrupted database" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 +msgid "" +"Your calibre database appears to be corrupted. Do you want calibre to try " +"and repair it automatically? If you say No, a new empty calibre library will " +"be created." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 +msgid "" +"Repairing database. This can take a very long time for a large collection" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +msgid "" +"Bad database location %r. Will start with a new, empty calibre library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +msgid "Starting %s: Loading books..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +msgid "If you are sure it is not running" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 +msgid "Cannot Start " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 +msgid "%s is already running." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +msgid "may be running in the system tray, in the" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +msgid "upper right region of the screen." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 +msgid "lower right region of the screen." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:101 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:253 msgid "calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255 +msgid "&Restrict to:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:256 +msgid "" +"Books display will be restricted to those matching the selected saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:257 +msgid "set in ui.py" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:258 msgid "Advanced search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:260 msgid "Alt+S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:261 msgid "&Search:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:263 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:366 -msgid "set in ui.py" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:264 msgid "Reset Quick Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:266 msgid "Choose saved search or enter name for new saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:267 msgid "Copy current search text (instead of search name)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:269 msgid "Save current search under the name shown in the box" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:374 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271 msgid "Delete current saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:376 -msgid "Sort by &popularity" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:377 -msgid "Match any" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:378 -msgid "Match all" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:273 msgid "Add books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:274 msgid "A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:381 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:275 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:276 msgid "Remove books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:277 msgid "Del" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:278 msgid "Edit meta information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:385 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:279 msgid "E" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:280 +msgid "Merge book records" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:281 +msgid "M" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:282 msgid "Send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:325 -msgid "Save to disk" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:284 msgid "S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:389 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:285 msgid "Fetch news" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:286 msgid "F" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:287 msgid "Convert E-books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:288 msgid "C" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:335 -msgid "View" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:290 msgid "V" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:291 msgid "Open containing folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:292 msgid "Show book details" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:293 msgid "Books by same author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:294 msgid "Books in this series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:399 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:295 msgid "Books by this publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:296 msgid "Books with the same tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:298 msgid "Configure calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:299 msgid "Ctrl+P" msgstr "" @@ -5959,15 +7552,15 @@ msgid "" "on windows where GUI apps do not have a output streams." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:61 msgid "&Preferences" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:62 msgid "&Quit" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:85 +#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:90 msgid "ERROR: Unhandled exception" msgstr "" @@ -5979,11 +7572,35 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 +msgid "The selected search will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 +msgid "Search (For Advanced Search click the button to the left)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 +msgid "Saved Searches" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:46 +msgid "({0} of {1})" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:52 +msgid "(all books)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 +msgid "({0} of all)" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:58 msgid "Press a key..." msgstr "" @@ -6002,7 +7619,7 @@ msgid " or " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:133 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:69 msgid "&Default" msgstr "" @@ -6018,70 +7635,103 @@ msgstr "" msgid "Double click to change" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:68 msgid "Frame" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:70 msgid "&Custom" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:71 msgid "&Shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:71 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:76 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:77 msgid "Click to change" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:79 msgid "Clear" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:76 msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 -msgid "Jobs:" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 +msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 -msgid "Click to see list of active jobs." +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 +msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:196 -msgid "Click to browse books by their covers" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 +msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:196 -msgid "Click to turn off Cover Browsing" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 +msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 -msgid "" -"

    Browsing books by their covers is disabled.
    Import of pictureflow " -"module failed:
    " +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 +msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:209 -msgid "Click to browse books by tags" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 +msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Authors" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 +msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Publishers" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 +msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +msgid "Duplicate search name" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 +msgid "The saved search name %s is already used." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by name" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by popularity" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 +msgid "Sort by average rating" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 +msgid "Match all" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 +msgid "Match any" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 +msgid "Manage &user categories" +msgstr "" + #: /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)" @@ -6121,573 +7771,112 @@ msgid "" "reconvert them?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:67 -msgid "Save single format to disk..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:147 -msgid "Search (For Advanced Search click the button to the left)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:153 -msgid "Saved Searches" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:176 -msgid "Error communicating with device" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:162 msgid "&Restore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:164 msgid "&Donate to support calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:167 msgid "&Eject connected device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:203 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:172 msgid "&Restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:206 msgid "

    For help see the: User Manual
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:212 msgid "%s: %s by Kovid Goyal %%(version)s
    %%(device)s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:268 -msgid "Edit metadata individually" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:270 -msgid "Edit metadata in bulk" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:272 -msgid "Download metadata and covers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:273 -msgid "Download only metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:274 -msgid "Download only covers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:275 -msgid "Download only social metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:278 -msgid "Add books from a single directory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:279 -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/ui.py:282 -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/ui.py:285 -msgid "Add Empty book. (Book entry with no formats)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:326 -msgid "Save to disk in a single directory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:327 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2043 -msgid "Save only %s format to disk" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:336 -msgid "View specific format" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 -msgid "Remove selected books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:342 -msgid "Remove files of a specific format from selected books.." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:344 -msgid "Remove all formats from selected books, except..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:346 -msgid "Remove covers from selected books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:378 -msgid "Convert individually" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:379 -msgid "Bulk convert" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:382 -msgid "Create catalog of books in your calibre library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:398 -msgid "Run welcome wizard" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 -msgid "Similar books..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:494 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:495 -msgid "Bad database location" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:497 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:563 -msgid "Calibre Library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:507 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2198 -msgid "Choose a location for your ebook library." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:736 -msgid "Browse by covers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:793 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:797 -msgid "(all books)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:802 -msgid "(%d found)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:893 -msgid "Device: " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:895 -msgid " detected." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:923 -msgid "Connected " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:935 -msgid "Device database corrupted" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:936 -msgid "" -"\n" -"

    The database of books on the reader is corrupted. Try the " -"following:\n" -"

      \n" -"
    1. Unplug the reader. Wait for it to finish regenerating " -"the database (i.e. wait till it is ready to be used). Plug it back in. Now " -"it should work with %(app)s. If not try the next step.
    2. \n" -"
    3. Quit %(app)s. Find the file media.xml in the reader's " -"main memory. Delete it. Unplug the reader. Wait for it to regenerate the " -"file. Re-connect it and start %(app)s.
    4. \n" -"
    \n" -" " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:995 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1172 -msgid "Use library only" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:996 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1173 -msgid "User annotations generated from main library only" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1003 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1484 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1541 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1579 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1605 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1670 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1788 -msgid "No books selected" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1004 -msgid "No books selected to fetch annotations from" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1029 -msgid "Merging user annotations into database" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1057 -msgid "%s
    Last Page Read: %d (%d%%)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1063 -msgid "%s
    Last Page Read: Location %d (%d%%)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1082 -msgid "Location %d • %s
    %s
    " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1091 -msgid "Page %d • %s
    " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1096 -msgid "Location %d • %s
    " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1216 -msgid "How many empty books?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1217 -msgid "How many empty books should be added?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1265 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1316 -msgid "Uploading books to device." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1277 -msgid "EPUB Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1278 -msgid "LRF Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1279 -msgid "HTML Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1280 -msgid "LIT Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1281 -msgid "MOBI Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1282 -msgid "Topaz books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1283 -msgid "Text books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1284 -msgid "PDF Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1285 -msgid "Comics" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1286 -msgid "Archives" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1290 -msgid "Supported books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1325 -msgid "Merged some books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1326 -msgid "" -"Some duplicates were found and merged into the following existing books:" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1335 -msgid "Failed to read metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1336 -msgid "Failed to read metadata from the following" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1356 -msgid "Cannot delete" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1359 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1932 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1948 -msgid "No book selected" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1369 -msgid "Choose formats to be deleted" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1387 -msgid "Choose formats not to be deleted" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1425 -msgid "" -"The selected books will be permanently deleted and the files removed " -"from your computer. Are you sure?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1452 -msgid "Deleting books from device." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1483 -msgid "Cannot download metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1499 -msgid "social metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1501 -msgid "covers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1501 -msgid "metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1503 -msgid "Downloading %s for %d book(s)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1525 -msgid "Failed to download some metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1526 -msgid "Failed to download metadata for the following:" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1529 -msgid "Failed to download metadata:" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1540 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1578 -msgid "Cannot edit metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1604 -msgid "Cannot save to disk" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1607 -msgid "Choose destination directory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1640 -msgid "Error while saving" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1641 -msgid "There was an error while saving." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1648 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1649 -msgid "Could not save some books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1650 -msgid "Click the show details button to see which ones." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1671 -msgid "No books selected to generate catalog for" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1688 -msgid "Generating %s catalog..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1694 -msgid "" -"No books to catalog\n" -"Check exclude tags" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1704 -msgid "Catalog generated." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1707 -msgid "Export Catalog Directory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1708 -msgid "Select destination for %s.%s" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1722 -msgid "Fetching news from " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1736 -msgid " fetched." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1787 -msgid "Cannot convert" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1816 -msgid "Starting conversion of %d book(s)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1932 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1985 -msgid "Cannot view" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1947 -msgid "Cannot open folder" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1969 -msgid "Multiple Books Selected" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1970 -msgid "" -"You are attempting to open %d books. Opening too many books at once can be " -"slow and have a negative effect on the responsiveness of your computer. Once " -"started the process cannot be stopped until complete. Do you wish to " -"continue?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1986 -msgid "%s has no available formats." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2027 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2028 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2071 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 +msgid "Cannot configure before calibre is restarted." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2072 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2126 -msgid "Error talking to device" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2127 -msgid "" -"There was a temporary error talking to the device. Please unplug and " -"reconnect the device and or reboot." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2150 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2178 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2151 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2164 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2179 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2207 -msgid "Invalid library location" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2208 -msgid "Could not access %s. Using %s as the library." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2258 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2283 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2286 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2290 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2342 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2361 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:52 msgid "" "Latest version: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2369 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:60 msgid "Update available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2370 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:61 msgid "" "%s has been updated to version %s. See the new features. Visit the download page?" @@ -6845,70 +8034,99 @@ msgstr "" msgid "No results found for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:35 msgid "Options to customize the ebook viewer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:40 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:675 msgid "Remember last used window size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:42 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:44 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:81 msgid "" "Set the user CSS stylesheet. This can be used to customize the look of all " "books." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:44 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:46 msgid "Maximum width of the viewer window, in pixels." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:48 msgid "Resize images larger than the viewer window to fit inside it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:49 msgid "Hyphenate text" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:51 msgid "Default language for hyphenation rules" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:53 msgid "Font options" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:53 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:55 msgid "The serif font family" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:57 msgid "The sans-serif font family" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:59 msgid "The monospaced font family" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:60 msgid "The standard font size in px" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:61 msgid "The monospaced font size in px" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:62 msgid "The standard font type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:449 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:452 msgid "&Lookup in dictionary" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:455 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:138 +msgid "Go to..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:467 +msgid "Next Section" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:468 +msgid "Previous Section" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:470 +msgid "Document Start" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:471 +msgid "Document End" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:473 +msgid "Section Start" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:474 +msgid "Section End" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:12 msgid "Scroll to the next page" msgstr "" @@ -6961,10 +8179,6 @@ msgstr "" msgid "Book format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:138 -msgid "Go to..." -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:184 msgid "Position in book" msgstr "" @@ -6973,258 +8187,294 @@ msgstr "" msgid "Go to a reference. To get reference numbers, use the reference mode." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:199 msgid "Search for text in book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:268 msgid "Print Preview" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:299 msgid "Connecting to dict.org to lookup: %s…" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:398 msgid "Choose ebook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:399 msgid "Ebooks" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:418 msgid "Add bookmark" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:418 msgid "Enter title for bookmark:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:441 msgid "No matches found for: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:474 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:478 msgid "Loading flow..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:514 msgid "Laying out %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:543 msgid "Manage Bookmarks" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:578 msgid "Loading ebook..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:586 msgid "DRM Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:587 msgid "

    This book is protected by DRM" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:591 msgid "Could not open ebook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:661 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:665 msgid "Options to control the ebook viewer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:668 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:672 msgid "" "If specified, viewer window will try to come to the front when started." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:673 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:677 msgid "Print javascript alert and console messages to the console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:679 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:683 msgid "" "%prog [options] file\n" "\n" "View an ebook.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:178 -msgid "Ebook Viewer" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:179 -msgid "Close dictionary" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:181 -msgid "toolBar" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:184 -msgid "Next page" +msgid "E-book Viewer" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:185 -msgid "Previous page" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 -msgid "Font size larger" +msgid "Close dictionary" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:187 -msgid "Font size smaller" +msgid "toolBar" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:190 +msgid "Next page" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:191 -msgid "Find next" +msgid "Previous page" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:192 -msgid "Copy to clipboard" +msgid "Font size larger" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 -msgid "Reference Mode" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:195 -msgid "Bookmark" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:196 -msgid "Toggle full screen" +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:193 +msgid "Font size smaller" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:197 +msgid "Find next" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:198 +msgid "Find next occurrence" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:199 +msgid "F3" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:200 +msgid "Copy to clipboard" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:202 +msgid "Reference Mode" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:203 +msgid "Bookmark" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:204 +msgid "Toggle full screen" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205 msgid "Print" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:206 +msgid "Find previous" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:207 +msgid "Find previous occurrence" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:208 +msgid "Shift+F3" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/viewer/printing.py:114 msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 +msgid "Books located at" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 +msgid "Drag to resize" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 +msgid "Show" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 +msgid "Hide" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:367 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:339 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:371 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:341 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:373 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:418 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:450 msgid "Moving library..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:434 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:435 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:467 msgid "Failed to move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:521 msgid "Invalid database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:522 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:501 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:533 msgid "Could not move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:630 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:662 msgid "welcome wizard" msgstr "" @@ -7259,13 +8509,6 @@ msgstr "" msgid "&Devices" 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:49 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 -msgid "WizardPage" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:48 msgid "" "

    Congratulations!

    You have successfully setup calibre. Press the %s " @@ -7448,38 +8691,49 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:8 -msgid "Settings to control the calibre content server" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 +msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:12 -msgid "The port on which to listen. Default is %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 +msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:14 -msgid "The server timeout in seconds. Default is %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 +msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:16 -msgid "The max number of worker threads to use. Default is %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 +msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:18 -msgid "Set a password to restrict access. By default access is unrestricted." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 +msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:20 -msgid "Username for access. By default, it is: %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 +msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:24 -msgid "The maximum size for displayed covers. Default is %default." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 +msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:26 -msgid "" -"The maximum number of matches to return per OPDS query. This affects Stanza, " -"WordPlayer, etc. integration." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 +msgid "yes" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 +msgid "blank" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 +msgid "empty" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:41 @@ -7499,14 +8753,14 @@ msgid "" "Applies to: CSV, XML output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:262 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:202 msgid "" "Title of generated catalog used as title in metadata.\n" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:269 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:209 msgid "" "Save the output from different stages of the conversion pipeline to the " "specified directory. Useful if you are unsure at which stage of the " @@ -7515,14 +8769,14 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:279 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:219 msgid "" "Regex describing tags to exclude as genres.\n" "Default: '%default' excludes bracketed tags, e.g. '[]'\n" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:225 msgid "" "Comma-separated list of tag words indicating book should be excluded from " "output. Case-insensitive.\n" @@ -7531,28 +8785,28 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:293 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:233 msgid "" "Include 'Titles' section in catalog.\n" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:300 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:240 msgid "" "Include 'Recently Added' section in catalog.\n" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:307 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:247 msgid "" "Tag prefix for user notes, e.g. '*Jeff might enjoy reading this'.\n" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:314 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:254 msgid "" "Sort titles with leading numbers as text, e.g.,\n" "'2001: A Space Odyssey' sorts as \n" @@ -7561,7 +8815,7 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:321 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:261 msgid "" "Specifies the output profile. In some cases, an output profile is required " "to optimize the catalog for the device. For example, 'kindle' or " @@ -7571,27 +8825,27 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:328 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:268 msgid "" "Tag indicating book has been read.\n" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:122 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:41 msgid "" "Path to the calibre library. Default is to use the path stored in the " "settings." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:215 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:120 msgid "" "%prog list [options]\n" "\n" "List the books available in the calibre database.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:223 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:128 msgid "" "The fields to display when listing books in the database. Should be a comma " "separated list of fields.\n" @@ -7600,61 +8854,55 @@ msgid "" "fields. Only has effect in the text output format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:230 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:135 msgid "" "The field by which to sort the results.\n" "Available fields: %s\n" "Default: %%default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:232 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:137 msgid "Sort results in ascending order" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:234 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:139 msgid "" "Filter the results by the search query. For the format of the search query, " "please see the search related documentation in the User Manual. Default is " "to do no filtering." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:236 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:141 msgid "" "The maximum width of a single line in the output. Defaults to detecting " "screen size." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:237 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:142 msgid "The string used to separate fields. Default is a space." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:238 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:143 msgid "" "The prefix for all file paths. Default is the absolute path to the library " "folder." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:241 -msgid "" -"The format in which to output the data. Available choices: %s. Defaults is " -"text." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/library/cli.py:263 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:165 msgid "Invalid fields. Available fields:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:270 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:172 msgid "Invalid sort field. Available fields:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:342 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:244 msgid "" "The following books were not added as they already exist in the database " "(see --duplicates option):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:365 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:267 msgid "" "%prog add [options] file1 file2 file3 ...\n" "\n" @@ -7663,27 +8911,43 @@ msgid "" "the directory related options below.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:374 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:276 msgid "" "Assume that each directory has only a single logical book and that all files " "in it are different e-book formats of that book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:376 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:278 msgid "Process directories recursively" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:378 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:280 msgid "" "Add books to database even if they already exist. Comparison is done based " "on book titles." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:388 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:282 +msgid "Add an empty book (a book with no formats)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/cli.py:284 +msgid "Set the title of the added empty book" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/cli.py:286 +msgid "Set the authors of the added empty book" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/cli.py:288 +msgid "Set the ISBN of the added empty book" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/cli.py:313 msgid "You must specify at least one file to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:404 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:329 msgid "" "%prog remove ids\n" "\n" @@ -7692,11 +8956,11 @@ msgid "" "command). For example, 23,34,57-85\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:419 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:344 msgid "You must specify at least one book to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:438 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:363 msgid "" "%prog add_format [options] id ebook_file\n" "\n" @@ -7705,15 +8969,15 @@ msgid "" "already exists, it is replaced.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:453 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:378 msgid "You must specify an id and an ebook file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:458 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:383 msgid "ebook file must have an extension" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:466 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:391 msgid "" "\n" "%prog remove_format [options] id fmt\n" @@ -7723,11 +8987,11 @@ msgid "" "EPUB. If the logical book does not have fmt available, do nothing.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:483 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:408 msgid "You must specify an id and a format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:501 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:426 msgid "" "\n" "%prog show_metadata [options] id\n" @@ -7737,15 +9001,15 @@ msgid "" "id is an id number from the list command.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:509 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:434 msgid "Print metadata in OPF form (XML)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:518 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:443 msgid "You must specify an id" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:531 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:456 msgid "" "\n" "%prog set_metadata [options] id /path/to/metadata.opf\n" @@ -7758,11 +9022,11 @@ msgid "" "show_metadata command.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:547 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:472 msgid "You must specify an id and a metadata file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:567 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:492 msgid "" "%prog export [options] ids\n" "\n" @@ -7773,27 +9037,27 @@ msgid "" "an opf file). You can get id numbers from the list command.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:575 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:500 msgid "Export all books in database, ignoring the list of ids." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:577 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:502 msgid "Export books to the specified directory. Default is" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:579 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:504 msgid "Export all books into a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:586 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:511 msgid "Specifying this switch will turn this behavior off." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:609 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:534 msgid "You must specify some ids or the %s option" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:622 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:547 msgid "" "%prog add_custom_column [options] label name datatype\n" "\n" @@ -7804,23 +9068,23 @@ msgid "" "datatype is one of: {0}\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:631 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:556 msgid "" "This column stores tag like data (i.e. multiple comma separated values). " "Only applies if datatype is text." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:635 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:560 msgid "" "A dictionary of options to customize how the data in this column will be " "interpreted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:648 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:573 msgid "You must specify label, name and datatype" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:706 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:631 msgid "" "\n" " %prog catalog /path/to/destination.(csv|epub|mobi|xml ...) [options]\n" @@ -7831,30 +9095,30 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:720 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:645 msgid "" "Comma-separated list of database IDs to catalog.\n" "If declared, --search is ignored.\n" "Default: all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:724 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:649 msgid "" "Filter the results by the search query. For the format of the search query, " "please see the search-related documentation in the User Manual.\n" "Default: no filtering" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:730 -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:655 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:505 msgid "Show detailed output information. Useful for debugging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:743 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:668 msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:763 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -7866,17 +9130,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:785 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:804 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -7885,15 +9149,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:811 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:823 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:831 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 +msgid "y" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -7903,15 +9171,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:839 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:849 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:862 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -7923,30 +9191,50 @@ msgid "" "For help on an individual command: %%prog command --help\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1258 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:70 +msgid "%sAverage rating is %3.1f" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 +msgid "Main" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 +msgid "Card A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 +msgid "Card B" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1287 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1304 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1397 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1434 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1456 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:118 +msgid "Ratings" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:24 msgid "The title" msgstr "" @@ -7970,62 +9258,64 @@ msgid "The series" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:30 -msgid "The series number. To get leading zeros use {series_index:0>3s}" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:31 -msgid "The rating" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:32 -msgid "The ISBN" +msgid "" +"The series number. To get leading zeros use {series_index:0>3s} or " +"{series_index:>3s} for leading spaces" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:33 -msgid "The publisher" +msgid "The rating" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:34 -msgid "The date" +msgid "The ISBN" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:35 -msgid "The published date" +msgid "The publisher" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:36 +msgid "The date" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:37 +msgid "The published date" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:38 msgid "The calibre internal id" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:46 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:48 msgid "Options to control saving to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:52 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:54 msgid "" "Normally, calibre will update the metadata in the saved files from what is " "in the calibre library. Makes saving to disk slower." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:55 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:57 msgid "" "Normally, calibre will write the metadata into a separate OPF file along " "with the actual e-book files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:58 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:60 msgid "" "Normally, calibre will save the cover in a separate file along with the " "actual e-book file(s)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:61 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:63 msgid "" "Comma separated list of formats to save for each book. By default all " "available books are saved." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:64 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:66 msgid "" "The template to control the filename and directory structure of the saved " "files. Default is \"%s\" which will save books into a per-author " @@ -8033,7 +9323,7 @@ msgid "" "are: {%s}" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:69 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:71 msgid "" "The template to control the filename and directory structure of files sent " "to the device. Default is \"%s\" which will save books into a per-author " @@ -8041,7 +9331,7 @@ msgid "" "are: {%s}" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:76 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:78 msgid "" "Normally, calibre will convert all non English characters into English " "equivalents for the file names. WARNING: If you turn this off, you may " @@ -8049,43 +9339,124 @@ msgid "" "saving to supports unicode." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:82 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:84 msgid "" "The format in which to display dates. %d - day, %b - month, %Y - year. " "Default is: %b, %Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:85 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:87 msgid "Convert paths to lowercase." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:87 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:89 msgid "Replace whitespace with underscores." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:256 +#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:258 msgid "Requested formats not available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server.py:379 +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:21 +msgid "Settings to control the calibre content server" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:25 +msgid "The port on which to listen. Default is %default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:27 +msgid "The server timeout in seconds. Default is %default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:29 +msgid "The max number of worker threads to use. Default is %default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:31 +msgid "Set a password to restrict access. By default access is unrestricted." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:33 +msgid "Username for access. By default, it is: %default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:37 +msgid "The maximum size for displayed covers. Default is %default." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:39 +msgid "" +"The maximum number of matches to return per OPDS query. This affects Stanza, " +"WordPlayer, etc. integration." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:43 +msgid "" +"Group items in categories such as author/tags by first letter when there are " +"more than this number of items. Default: %default. Set to a large number to " +"disable grouping." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/base.py:93 msgid "Password to access your calibre library. Username is " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server.py:886 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:28 msgid "" "[options]\n" "\n" "Start the calibre content server." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server.py:888 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:30 msgid "Path to the library folder to serve with the content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server.py:890 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:32 msgid "Write process PID to the specified file" msgstr "" +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:108 +msgid "%d books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:127 +msgid "%d items" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:144 +msgid "RATING: %s
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:147 +msgid "TAGS: %s
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:151 +msgid "SERIES: %s [%s]
    " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:192 +msgid "Library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:231 +msgid "Books in your library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:237 +msgid "By " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:238 +msgid "Books sorted by " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 +msgid "Newest" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/config.py:48 msgid "%sUsage%s: %s\n" msgstr "" @@ -8100,58 +9471,66 @@ msgid "" "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:650 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:670 msgid "Path to the database in which books are stored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:652 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:672 msgid "Pattern to guess metadata from filenames" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:654 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:674 msgid "Access key for isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:656 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:676 msgid "Default timeout for network operations (seconds)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:658 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:678 msgid "Path to directory in which your library of books is stored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:660 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:680 msgid "The language in which to display the user interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:662 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:682 msgid "The default output format for ebook conversions." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:666 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:686 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:668 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:688 msgid "Read metadata from files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:670 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:690 msgid "The priority of worker processes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:672 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:692 msgid "Swap author first and last names when reading metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:674 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:694 msgid "Add new formats to existing book records" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:678 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:699 msgid "List of named saved searches" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:700 +msgid "User-created tag browser categories" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -8221,26 +9600,38 @@ msgid "English (Pakistan)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 -msgid "English (Singapore)" +msgid "English (Israel)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 -msgid "English (Yemen)" +msgid "English (Singapore)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 -msgid "English (Ireland)" +msgid "English (Yemen)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:109 -msgid "German (AT)" +msgid "English (Ireland)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:110 -msgid "Dutch (NL)" +msgid "English (China)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:111 +msgid "Spanish (Paraguay)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112 +msgid "German (AT)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:113 +msgid "Dutch (NL)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114 msgid "Dutch (BE)" msgstr "" @@ -8264,13 +9655,13 @@ msgstr "" msgid "Control email delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:102 -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:124 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:118 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:140 msgid "Unknown feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:142 -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:165 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:158 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:183 msgid "Untitled article" msgstr "" @@ -8297,97 +9688,97 @@ msgid "" "Do not download latest version of builtin recipes from the calibre server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:43 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:44 msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:565 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:654 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:656 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:662 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:664 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:666 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:747 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:768 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:773 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:779 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:781 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:861 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:877 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:887 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:899 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:934 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1158 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1228 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1239 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1256 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1403 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1419 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -8399,64 +9790,64 @@ msgstr "" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:471 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:482 msgid "" "%prog URL\n" "\n" "Where URL is for example http://google.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:474 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:485 msgid "Base directory into which URL is saved. Default is %default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:477 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:488 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:480 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:491 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:483 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494 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:485 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:496 msgid "" "Minimum interval in seconds between consecutive fetches. Default is %default " "s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:487 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:498 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:489 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:500 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:491 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:502 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 " @@ -8465,9 +9856,15 @@ msgid "" "applied first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:493 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:504 msgid "Do not download CSS stylesheets." msgstr "" +#~ msgid "Communicate with the Sony PRS-600/700/900 eBook reader." +#~ msgstr "Kommunikoi Sony PRS-600/700/900 -lukijoiden kanssa." + +#~ msgid "Communicate with the Sony PRS-300/505/500 eBook reader." +#~ msgstr "Kommunikoi Sony PRS-300/505/500 -lukijoiden kanssa." + #~ msgid "dummy option until real options are determined." #~ msgstr "Täytevalinta kunnes todelliset valinnat määritetään." diff --git a/src/calibre/translations/fr.po b/src/calibre/translations/fr.po index 4fa07711e3..b80988d22d 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: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 20:01+0000\n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-03 11:11+0000\n" "Last-Translator: sengian \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: 2010-06-19 03:47+0000\n" +"X-Launchpad-Export-Date: 2010-07-04 03:43+0000\n" "X-Generator: Launchpad (build Unknown)\n" "X-Poedit-Bookmarks: 1177,-1,-1,-1,-1,-1,-1,-1,-1,-1\n" "Generated-By: pygettext.py 1.5\n" @@ -28,28 +28,29 @@ msgstr "Ne fait strictement rien" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -72,9 +73,9 @@ msgstr "Ne fait strictement rien" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -102,49 +103,49 @@ msgstr "Ne fait strictement rien" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -180,7 +181,7 @@ msgstr "" "contenant tous les fichiers liés. Ce plug-in est lancé chaque fois que vous " "ajoutez un fichier HTML à la bibliothèque." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -188,7 +189,7 @@ msgstr "" "Encodage des caractères pour les fichiers HTML en entrée. Les choix les plus " "communs incluent : cp1252, latin1, iso-8859-1 et utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -198,49 +199,49 @@ msgstr "" "le répertoire pmlname_img ou images. Ce plugin est lancé à chaque ajout d'un " "fichier PML dans la bibliothèque." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Extraction de la couverture depuis des fichiers de bandes dessinées" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Lecture des métadonnées depuis les fichiers %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Lecture des métadonnées des ebooks contenus dans les archives RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Lecture des métadonnées des ebooks contenus dans les archives ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Définir les métadonnées des fichiers %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Définir les métadonnées à partir des fichiers %s" @@ -286,7 +287,7 @@ msgstr "" "vous ne savez rien à propos du document d'entrée." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "Ce profil est prévu pour les SONY PRS. Le 500/505/600/700 etc..." @@ -296,70 +297,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Ce profil est prévu pour le SONY PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Ce profil est prévu pour le SONY PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Ce profil est prévu pour le lecteur Microsoft." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Ce profil est prévu pour les livres Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Ce profil est prévu pour le Handlin V3 et ses clones." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Ce profil est prévu pour le Hanlin V5 et ses clones." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Ce profil est prévu pour le Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Ce profil est prévu pour le Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Ce profil est prévu pour le Kindle d'Amazon." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Ce profil est prévu pour l'Iliad Irex." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Ce profil est prévu pour l'IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Ce profil est prévu pour le lecteur IRex Digital 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Ce profil est prévu pour le Nook B&N." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Profil de sortie" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -369,25 +370,25 @@ msgstr "" "souhaitez générer un document que vous avez l'intention de lire sur un " "ordinateur ou sur une gamme d'appareils." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" "Prévu pour l'iPad et les appareils semblables avec une résolution de 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Ce profil est prévu pour le lecteur Kobo" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Ce profil est prévu pour le SONY PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Ce profil est prévu pour le JetBook de 5 pouces." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -395,7 +396,7 @@ msgstr "" "Ce profil est prévu pour les SONY PRS. Les 500/505/700 etc, en mode paysage. " "Principalement utile pour les bandes dessinées." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Ce profil est prévu pour le Kindle DX d'Amazon." @@ -417,7 +418,7 @@ msgstr "Plugins désactivés." #: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 msgid "Enabled plugins" -msgstr "" +msgstr "Plugins activés" #: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " @@ -474,7 +475,7 @@ msgstr "Désactive le plugin nommé" msgid "Communicate with Android phones." msgstr "Communiquer avec les téléphones Android" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -482,36 +483,47 @@ msgstr "" "Liste de répertoires séparés par des virgules utilisée pour envoyer les " "ebooks vers l'appareil. Le premier existant sera utilisé." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Communiquer avec les téléphones S60" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." -msgstr "Communiquer avec iBooks à travers iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "Communiquer avec iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "Appareil Apple détecté, lancement d'iTunes, veuillez patienter..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "Mise à jour de la liste des métadonnées de l'appareil..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "%d sur %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "Terminé" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Utiliser Séries comme Catégorie dans iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "Mettre en cache les couvertures provenant d'iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -521,17 +533,7 @@ msgstr "" "Les supprimer en utilisant l'application iBooks.\n" "Cliquer 'Afficher détails' pour obtenir la liste." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "paramètres pour les pilotes de périphériques" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "Liste de formats triés acceptés par l'appareil" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -539,18 +541,22 @@ msgstr "" "Certaines illustrations de couverture n'ont pu être converties.\n" "Cliquer sur 'Afficher Détails' pour une liste." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Informations" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Communiquer avec iTunes" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Communiquer avec le lecteur eBook Binatone Readme" @@ -573,9 +579,13 @@ msgstr "Communiquer avec le lecteur eBook Cybook Gen 3 / Opus" msgid "Communicate with the EB600 eBook reader." msgstr "Communiquer avec le lecteur d'ebook EB600" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Communiquer avec l'Astak Mentor EB600" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." -msgstr "" +msgstr "Communiquer avec le lecteur PocketBook 301" #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" @@ -620,6 +630,8 @@ msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used." msgstr "" +"Liste des répertoires séparés par une virgule utilisés pour envoyer les " +"livres électroniques à l'appareil. Le premier qui existe sera utilisé." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." @@ -679,10 +691,44 @@ msgstr "Communiquer avec le lecteur d'ebook Kindle 2." msgid "Communicate with the Kindle DX eBook reader." msgstr "Communiquer avec le lecteur d'ebook Kindle DX." -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "Communiquer avec le lecteur Kobo" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Lit la liste des livres de l'appareil..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Supprime les livres de l'appareil..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Supprime les livres de la liste des métadonnées de l'appareil..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Ajoute les livres à liste des métadonnées de l'appareil..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Communiquer avec le Palm Pre" @@ -691,6 +737,10 @@ msgstr "Communiquer avec le Palm Pre" msgid "Communicate with the Booq Avant" msgstr "Communiquer avec le Booq Avant" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Communiquer avec le Sweex MM300" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Communiquer avec la tablette internet Nokia 770." @@ -699,6 +749,10 @@ msgstr "Communiquer avec la tablette internet Nokia 770." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Communiquer avec la tablette internet Nokia 810." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "Communiquer avec un Nokia E52" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "Le Nook" @@ -727,7 +781,7 @@ msgstr "" "Liste de métadonnées séparées par des virgules, transformées en collection " "dans l'appareil. Les possibilités sont les suivantes : " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "Non nommé" @@ -748,25 +802,25 @@ msgstr "Communiquer avec le lecteur Newsmy" msgid "Communicate with the iPapyrus reader." msgstr "Communiquer avec le lecteur iPapyrus" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "Impossible de détecter le disque %s. Essayer de redémarrer" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "" "Impossible de détecter le point de montage %s. Essayez de redémarrer le " "poste." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "Impossible de monter le disque %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "Impossible de trouver l'assistant de montage: %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." @@ -774,25 +828,25 @@ msgstr "" "Impossible de détecter le disque dur %s. Votre noyau doit probablement " "exporter une version obsolète de SYSFS." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 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:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 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:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 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:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 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:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "Espace insuffisant sur la carte mémoire" @@ -800,25 +854,33 @@ msgstr "Espace insuffisant sur la carte mémoire" msgid "Configure Device" msgstr "Configurer l'appareil" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "paramètres pour les pilotes de périphériques" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Liste de formats triés acceptés par l'appareil" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "" "Placer les fichiers dans des sous-répertoires si l'appareil le permet" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Lire les métadonnées à partir des fichiers dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" -msgstr "" +msgstr "Utiliser la clé de tri d'auteur au lieu de l'auteur" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Modèle pour contrôler comment les livres sont sauvegardés" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Personnalisation complémentaire" @@ -831,36 +893,12 @@ msgstr "Communiquer avec un lecteur d'ebook." msgid "Get device information..." msgstr "Lit les informations de l'appareil..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "Lit la liste des livres de l'appareil..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "Transfère les livres vers l'appareil..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "Ajoute les livres à liste des métadonnées de l'appareil..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "Supprime les livres de l'appareil..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "Supprime les livres de la liste des métadonnées de l'appareil..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "Envoie les métadonnées vers l'appareil..." @@ -1695,14 +1733,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" -"Ne pas utiliser SVG pour la couverture du livre. Utiliser cette option si " -"votre EPUB doit être utilisé sur un appareil qui ne supporte pas SVG, comme " -"l'iPhone ou le Jetbook Lite. Sans cette option, ces appareils afficheront la " -"couverture comme une page vide." +"Ne pas utiliser le format SVG pour la couverture du livre. Utiliser cette " +"option si votre EPUB va être utilisé sur un appareil qui ne supporte pas " +"SVG, comme l'iPhone ou le JetBook Lite. Sans cette option, ce type " +"d'appareil affichera une page blanche comme couverture." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" @@ -1742,7 +1780,7 @@ msgstr "Ne pas insérer une Table des Matières au début du livre." msgid "Add Table of Contents to beginning of the book." msgstr "Ajouter la Table des Matières au début du livre." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1750,7 +1788,7 @@ msgstr "" "Parcourir les liens dans les fichier HTML en largeur en premier. " "Normalement, ils sont parcourus en profondeur en premier." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1760,7 +1798,7 @@ msgstr "" "HTML. Ne doit pas être négatif. 0 implique qu'aucun lien à la racine du " "fichier HTML ne sera suivi. Par défaut : %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1772,7 +1810,7 @@ msgstr "" "savez ce que vous faîtes car il peut en résulter des effets variés et " "déplaisants dans le reste de le chaine de conversion." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1920,7 +1958,7 @@ msgid "Path to output file" msgstr "Chemin vers le fichier sortie" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Analyse avec explications" @@ -2020,88 +2058,86 @@ msgstr "La famille de police monospace à inclure" msgid "Comic" msgstr "Bande dessinées" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Titre" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Auteur(s)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Éditeur" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Producteur" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Commentaires" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Etiquettes" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Séries" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Langue" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Horodatage" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publié" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Droits" @@ -2236,39 +2272,43 @@ msgstr "Couverture sauvée sur" msgid "No cover found" msgstr "Aucune couverture trouvée" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 -msgid "Downloads metadata from Douban.com" -msgstr "" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "Télécharger la couverture" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "Télécharger les métadonnées depuis Douban.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Télécharge les métadonnées" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "Notation" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "étiquettes" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "Description/Commentaires" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "Téléchargement de %s sur %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Télécharge les métadonnées à partir de Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Télécharge les métadonnées à partir d'isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2276,15 +2316,17 @@ msgstr "" "Pour utiliser isbndb.com vous devez vous enregistrer un %scompte gratuit%s " "et entrer votre clef d'accès ci-dessous." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Télécharge les métadonnées sociales à partir d'amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" +"Télécharger les informations sur les séries/étiquettes/notes à partir de " +"librarything.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2309,27 +2351,27 @@ msgstr "" "compte gratuit sur isbndb.com.\n" "\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "L'ISBN ID du livre dont vous désirez les métadonnées." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "L'auteur du livre à chercher." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "le titre du livre à chercher." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "L'éditeur du livre à chercher." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "Timeout sur LibraryThing.com. Réesayer plus tard." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2337,29 +2379,30 @@ msgstr "" "L'image de couverture n'a pas pu être récupérée à cause de problèmes de " "connexion. Veuillez réessayer ultérieurement." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " pas trouvé." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "Erreur du serveur LibraryThing.com. Veuillez réessayer plus tard." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" "\n" "%prog [options] ISBN\n" "\n" -"Chercher une image de couverture du livre identifié par ISBN sur " -"LibraryThing.com\n" +"Récupère les métadonnées sociales/la couverture du livre identifié par ISBN " +"à partir de LibraryThing.com\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Couverture" @@ -2404,70 +2447,70 @@ msgstr "Tous les articles" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "C'est un livre Amazon Topaz. Il ne peut pas être traité." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Page de titre" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Tables des matières" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Index" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Glossaire" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Remerciements" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliographie" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Marque de l'imprimeur" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Copyright" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Dédicace" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epigraphe" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Avant-propos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Liste d'illustrations" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Liste de Tables" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Notes" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Préface" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Texte principal" @@ -2960,7 +3003,7 @@ msgstr "Utiliser les chiffres romains pour les numéros de séries" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:47 msgid "Sort tags list by name, popularity, or rating" -msgstr "" +msgstr "Trier la liste d'étiquettes par nom, popularité ou note (classement)" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 msgid "Number of covers to show in the cover browsing mode" @@ -3050,223 +3093,227 @@ msgstr "La présentation de l'interface utilisateur" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105 msgid "Show the average rating per item indication in the tag browser" -msgstr "" +msgstr "Afficher la note moyenne par article dans le navigateur d'étiquettes" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "Désactiver les animations de IU" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Copié" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Copier" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Copier dans le Presse-papiers" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Choisir les fichiers" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "Utiliser seulement la bibliothèque" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" "Annotations utilisateur générées à partir de la bibliothèque principale " "uniquement" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "Aucun livre sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" "Aucun livre sélectionné pour la récupération des annotations à partir de" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "Fusionne les annotations utilisateur dans la base de données" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
    Last Page Read: %d (%d%%)" msgstr "%s
    Dernière Page Lue: %d (%d%%)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
    Last Page Read: Location %d (%d%%)" msgstr "%s
    Dernière Page Lue: Position %d (%d%%)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
    %s
    " msgstr "Position %d • %s
    %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
    " msgstr "Page %d • %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
    " msgstr "Position %d • %s
    " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "Combien de livres vides?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "Combien de livres vides doivent être ajoutés?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "Téléchargement des livres vers l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "Livres" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "Livres EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "Livres LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "Livres HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "Livres LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "Livres MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "Livres Topaz" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "Livres Texte" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "Livres PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "Bande Dessinées" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "Archives" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "Livres supportés" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "Fusionne des livres" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" "Des doublons ont été trouvés et fusionnés dans les livres existants suivants:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "Impossible de lire les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 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/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" -msgstr "" +msgstr "Ajouter à la bibliothèqye" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "Aucun livre sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" -msgstr "" +msgstr "Aucun fichier de livres trouvé" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "Impossible de supprimer" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "Choisir les formats à supprimer" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "Choisir les formats à ne pas supprimer" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" -msgstr "" +msgstr "Impossible d'effacer les livres" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" -msgstr "" +msgstr "Aucun appareil n'est connecté" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" -msgstr "" +msgstr "Mémoire principale" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "Carte mémoire A" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "Carte mémoire B" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" -msgstr "" +msgstr "Aucun livre à effacer" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" -msgstr "" +msgstr "Aucun des livres sélectionnés n'est sur l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "Suppression des livres dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -3274,7 +3321,7 @@ 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" @@ -3282,61 +3329,61 @@ msgstr "" "Les livres sélectionnés seront effacés de manière permanente de votre " "appareil. Etes vous sûr de votre choix?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "Impossible de télécharger les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "Métadonnées sociales" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "Télécharge les livres %s sur %d" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 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/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 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/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "Le téléchargement des métadonnées a échoué:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Erreur" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "Impossible d'éditer les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "Impossible de fusionner les livres" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "Au moins deux livres doivent être séléctionnés avant de fusionner" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

    The second and subsequently selected " @@ -3348,7 +3395,7 @@ msgstr "" "suivants sélectionnés ne seront ni supprimés ni changés.

    Veuille " "confirmer que vous voulez lancer le traitement." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

    After merger the second and " @@ -3365,7 +3412,7 @@ msgstr "" "définitivement supprimés de votre ordinateur.

    Êtes vous " "sûr de vouloir lancer le traitement ?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" @@ -3373,45 +3420,45 @@ msgstr "" "Vous allez fusionner plus de 5 livres. Etes-vous sûr de vouloir " "lancer le traitement ?" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "Impossible de sauvegarder sur le disque" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "Choisir le répertoire de destination" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "Erreur pendant la sauvegarde" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 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/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "Impossible de sauvegarder certains livres" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 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/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "Aucun livre sélectionné pour générer le catalogue pour" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "Génère le catalogue %s..." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "Aucun livre trouvé" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" @@ -3419,49 +3466,49 @@ msgstr "" "Aucun livre vers le catalogue\n" "Vérifier les étiquettes d'exclusion" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "Catalogue généré." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "Répertoire d'export du catalogue" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "Sélectionner la destination pour %s.%s" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "Récupération des News de " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr " récupéré." -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "Conversion impossible" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "Démarrer la conversion de %d livre(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "Impossible de visualiser" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "Choisir le format à afficher" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "Plusieurs livres sélectionnés" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3473,11 +3520,11 @@ 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/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "Impossible d'ouvrir le dossier" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "%s n'a pas de format disponible." @@ -3485,36 +3532,36 @@ msgstr "%s n'a pas de format disponible." msgid "Searching in" msgstr "Recherche dans" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Ajout..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Cherche dans tous les sous-répertoires..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Chemin de l'erreur" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "Le chemin spécifié ne peut pas être traité." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Aucun livre" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Ajouté" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "L'ajout a échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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." @@ -3523,11 +3570,11 @@ msgstr "" "redémarrer Calibre et ajoutez les livres avec un incrément plus petit, " "jusqu'à ce que vous trouviez le livre problèmatique." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Des doublons ont été détectés !" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -3535,15 +3582,15 @@ msgstr "" "Des livres avec des titres identiques à ceux qui suivent existent déjà la " "base. Voulez-vous quand-même les ajouter ?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "Ajoute les doublons..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Sauvegarde..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Sauvegardé" @@ -3641,23 +3688,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3704,57 +3751,58 @@ msgstr "" "Livres &Multiples dans un dossier, suppose que chaque livre électronique est " "un livre différent" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Chemin" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formats" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "Collections" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "Cliquer pour ouvrir" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Aucun" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" -msgstr "" +msgstr "Cliquer pour ouvrir la fenêtre Détail du livre" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml.py:16 msgid "CSV/XML Options" @@ -3801,7 +3849,7 @@ msgstr "sortie" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3811,7 +3859,7 @@ msgstr "sortie" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3833,8 +3881,8 @@ msgstr "Options de l'e-book" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Catalogue" @@ -3935,12 +3983,12 @@ msgstr "Conserver les &proportions" #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:98 msgid "Disable &Sharpening" -msgstr "Désactive &Accentuation" +msgstr "Désactiver l'&Accentuation" #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:104 msgid "Disable &Trimming" -msgstr "Désactive le &Decoupage" +msgstr "Désactiver le &Decoupage" #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:103 @@ -4305,77 +4353,77 @@ msgstr "" "Indiquer les métadonnées. Le fichier de sortie contiendra autant de ces " "métadonnées que possible." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Choisir la couverture pour " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Impossible de lire" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Erreur à la lecture du fichier" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " n'est pas une image compatible" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Couverture du livre" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Utiliser la couverture du fichier &source" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Modifier l'image de la &couverture:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "Utiliser la couverture du fichier &source" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Titre : " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "Modifie le titre du livre" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Auteur(s): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "T&ri de l'auteur:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" @@ -4383,20 +4431,20 @@ msgstr "" "Modifie le(s) auteur(s) de ce livre. Dans le cas d'auteurs multiples, " "séparer leurs noms par une virgule." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Editeur: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "Eti&quettes: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." @@ -4405,23 +4453,23 @@ msgstr "" "recherches.

    Celles-ci peuvent être formées de n'importe quels mots " "ou phrases, séparés par des virgules." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Séries:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "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:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Livre " @@ -4506,12 +4554,12 @@ msgid "PDB Input" msgstr "Entrée PDB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Traiter chaque &ligne comme un paragraphe" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "Suppose un format d'impression" @@ -4643,12 +4691,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 msgid "Invalid regular expression" msgstr "Expression régulière incorrecte" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Expression régulière incorrecte: %s" @@ -4736,11 +4784,11 @@ msgstr "&Filtre TDM:" msgid "TXT Input" msgstr "Entrée TXT" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "Traiter en utilisant 'markdown'" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" "Ne pas insérer la Table Des Matières dans le texte de sortie lorsque " "markdown est utilisé" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "Conservers les e&spaces" @@ -4886,6 +4934,7 @@ msgstr "Navigation par couvertures" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4914,128 +4963,145 @@ msgstr "étoile(s)" msgid "Unrated" msgstr "Non noté" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr " index:" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "Numérote automatiquement les livres dans ces séries" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "Supprimer toutes les étiquettes" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "étiquettes à ajouter" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "étiquettes à supprimer" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "Pas de détail disponible." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "L'appareil n'est plus connecté." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "Lit les informations de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 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:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "Obtenir les annotations à partir de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "Envoie les métadonnées vers l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "Envoyer les collections vers l'appareil" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "Envoie le livre %d dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "Supprimer les livres dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "Télécharger les livres à partir de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "Afficher le livre sur l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 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:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "Email vers" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr " et efface de la bibliothèque" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Envoyer vers la mémoire du lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Envoyer vers la carte mémoire A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Envoyer vers la carte mémoire B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "Mémoire principale" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "Envoyer et effacer de la bibliothèque" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "Envoyer un format spécifique" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "Connecter au dossier" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" -msgstr "Déconnecter du dossier" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "Connecter à iTunes" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "Ejecter l'appareil" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "Récupérer les annotations (expérimental)" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "Erreur pendant la communication avec le lecteur électronique" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "Sélectionner le dossier à ouvrir comme appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "Echec" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "Erreur pendant la communication avec le lecteur électronique" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5044,132 +5110,132 @@ msgstr "" "lecteur électronique. Veuillez déconnecter et reconnecter le lecteur " "électronique et redémarrer." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "Appareil: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr " detecté." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "Connecté: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "sélectionné pour l'envoi" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "Choisir le format à envoyer au lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "Aucun appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "Impossible d'envoyer: Aucun appareil connecté" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Aucune carte" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 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:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "E-book:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 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:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "par" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "dans le format %s." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Envoi d'un email à" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "Pas de format convenable" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 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:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 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:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "L'envoi par email des livres a échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 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:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "Envoyer par email:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "News:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "Le fichier attaché est" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Envoi des News vers" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 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:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Envoie les catalogues vers l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "Envoi les News vers l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "Envoie les livres dans l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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." @@ -5178,11 +5244,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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 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:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" @@ -5200,7 +5266,7 @@ msgstr "Utiliser les sous-répertoires" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83 msgid "Use author sort for author" -msgstr "" +msgstr "Utiliser la clé de tri d'auteur comme auteur" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85 msgid "Save &template:" @@ -5278,15 +5344,15 @@ msgstr "&Profil :" msgid "Edit Comments" msgstr "Editer les commentaires" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "%(plugins)s %(plugin_type)s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " @@ -5294,23 +5360,23 @@ msgstr "" "\n" "Personnalisation: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Conversion" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Général" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Interface" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Ajouter/Sauvegarder" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" @@ -5318,11 +5384,11 @@ msgstr "" "Envoi\n" "d'Email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Mode avancé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -5330,24 +5396,24 @@ msgstr "" "Serveur de\n" "contenu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Envoyer automatiquement" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "Email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" "Formats à envoyer par email. Le premier format qui correspond sera envoyé." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." @@ -5355,23 +5421,23 @@ msgstr "" "Si coché, les News téléchargées seront automatiquement envoyées par email " "
    à cette adresse (à condition qu'il appartienne à un des formats listés)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "Nouvelle adresse email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "Large" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "Etroit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "Port système sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " @@ -5382,135 +5448,135 @@ msgstr "" "empêcher le serveur de fonctionner sur ce port. Par sécurité choisissez " "plutôt un numéro de port supérieur à 1024." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "L'installation des outils en ligne de commande a échouée." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "Outils en ligne de commande installés." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "Outils en ligne de commande installés dans" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" "Si vous déplacez calibre.app, vous devez réinstaller les outils en ligne de " "commande." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "N'est pas un chemin correct pour les plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s n'est pas un répertoire correct pour les plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Choisir le plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Le plugin ne peut pas être désactivé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "Le plugin %s ne peut pas être désactivé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Le plugin ne peut pas être personnalisé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Le plugin %s ne peut pas être personnalisé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "Personnaliser" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "Impossible de supprimer les plugins natifs" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" " ne peut pas être retiré. C'est un plugin natif. Essayer plutôt de le " "désactiver" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "Vous devez sélectionner une colonne pour pouvoir la supprimer" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "La colonne sélectionnée n'est pas une colonne personnalisée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "Etes vous sur ?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" "Voulez vous vraiment supprimer la colonne %s et toutes les données qu'elle " "contient?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Journal d'erreur:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "Journal des accès:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "A échoué lors du démarrage du serveur de contenu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "Sélectionner l'emplacement pour les livres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Taille incorrecte" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "La taille %s est incorrecte. Doit être au format largeurxhauteur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Le chemin de la base de données n'est pas correct" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Le chemin de la base de données n'est pas correct " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "
    Doit être un répertoire." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "" "Le chemin de la base de données n'est pas correct.
    Erreur en écriture " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "Redémarrage nécessaire" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." @@ -5518,19 +5584,19 @@ msgstr "" "Les modifications effectuées nécessitent un redémarrage de Calibre. Veuillez " "redémarrer dès que possible." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "Vérifier l'intégrité de la base de données" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "La vérification de l'intégrité de la base de données a échouée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "Des incohérences ont été trouvées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -5542,11 +5608,11 @@ msgstr "" "Vous devrez les vérifier manuellement. Ceci peut arriver si vous avez " "manipulé les fichiers directement dans le dossier de la bibliothèque." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "Widget avec onglet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " @@ -5556,11 +5622,11 @@ msgstr "" "fichiers que vous ajoutez. Calibre peut lire les métadonnées à partir du " "contenu du fichier, ou du nom de fichier." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "Lire les métadonnées uniquement à partir du nom de &fichier" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." @@ -5568,30 +5634,31 @@ msgstr "" "Echanger le prénom et le nom de l'auteur. Ceci affecte seulement les " "métadonnées lues à partir des noms de fichiers." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "&Echanger le prénom et le nom de l'auteur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " "punctuation, case, etc. Author match is exact." msgstr "" -"Si un livre existant avec un titre et un auteur similaire est trouvé et qui " -"n'a pas le format qui a été ajouté, le format est ajouté \n" -"au livre existant, au lieu de créer une nouvelle entrée.Si le livre existant " -"a déjà le format, alors il sera silencieusement ignoré.\n" +"Si un livre existant avec un titre and un auteur identique ne possédant pas " +"le format à ajouter est trouvé, le format est ajouté\n" +"au livre existant au lieu de créer une nouvelle entrée. Si le livre existant " +"posséde déjà ce format, il est ignoré sans notification.\n" "\n" -"La correspondance par titre ignore les articles indéfinis de tête " -"(\"the\",\"a\",\"an\"), ponctuation, casse, etc. La correspondance par " -"auteur est exacte." +"La recherche de correspondance ignore dans le cas du titre les articles " +"indéfinis en début de chaîne (\"the\", \"a\", \"an\"),\n" +"la ponctuation, la casse, etc. La recherche de correspondance est exacte " +"pour l'auteur." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" @@ -5599,15 +5666,15 @@ msgstr "" "Si des livres avec des titres et des auteurs similaires sont trouvés, " "&fusionner les nouveaux fichiers automatiquement" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "&Configurer les métadonnées à partir du nom de fichier" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "&Ajout de livres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" @@ -5615,43 +5682,65 @@ msgstr "" "Ici vous pouvez contrôler comment Calibre va sauvegarder vos livres quand " "vous cliquez sur le bouton Sauvegarder sur le disque:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Sauvegarder les &couvertures séparément" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "Mettre à jour les &métadonnées dans les copies sauvegardées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "Sauvegarder les métadonnées dans le fichier &OPF" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "Convertir les caractères non-Anglais vers des équivalents &Anglais" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "Format de &dates comme:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "&Formats de fichier à sauvegarder:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Remplacer les espaces par des &underscores" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Changer les chemins en minuscu&les" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "&Sauvegarde de livres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "Conserver les collections de l'appareil" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" +"Si cette case est cochée, les collections ne seront pas effacées même si un " +"livre avec des métadonnées modifiées est renvoyé et la collection n'est pas " +"dans les métadonnées du livre. En plus, l'édition des collections sur " +"l'appareil va être activée. Si elle est décochée, les collections seront " +"seulement le reflet des métadonnées de la bibliothèque de Calibre." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " @@ -5662,18 +5751,18 @@ msgstr "" "peuvent être outrepassés par votre lecteur en personnalisant l'interface de " "gestion des pluggins des lecteurs dans Préférences->Plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "Envoi vers l'&appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Préférences" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -5681,31 +5770,31 @@ msgstr "" "&Localisation des ebooks (Les ebooks sont stockés dans les dossiers triés " "par auteur et les métadonnées sont stockées dans le fichier metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Choisir un nouvel emplacement pour la base de données" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Envoyer une notification quand une &nouvelle version est disponible." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" "Télécharger les métadonnées &sociales (étiquettes/classement/etc...) par " "défaut" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" "Écraser l'auteur et le titre par défaut l&ors de la récupération des " "métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "&Timeout par défaut pour les connexions réseau :" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -5713,150 +5802,160 @@ msgstr "" "Indiquer le timeout par défaut pour les recherches réseau (c-à-d le temps " "utilisé pour aller rechercher l'information par internet)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " secondes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Choisir la &langue (nécessite un redémarrage):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Normale" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Haute" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Basse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "&Priorité du travail:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Format de &sortie préféré:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Ordre préféré pour le format d'&entrée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "Utiliser les chiffres &romains pour les numéros de séries" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" "&Activer l'affichage dans la zone de notification (redémarrage nécessaire)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Afficher les alertes dans la zone de ¬ification" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "Afficher l'&écran d'accueil au démarrage" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" "Afficher la &navigation par couverture dans une fenêtre séparée (redémarrage " "nécessaire)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" -msgstr "" +msgstr "Afficher la note moyenne dans le navigateur d'étiquettes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "Rechercher lors de la saisie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "Envoyer automatiquement les i&nformations vers le lecteur d'ebook" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" "&Supprimer les News de la bibliothèque lorsque l'envoi est automatique vers " "l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" "&Nombre de couvertures à afficher dans le mode navigation (nécessite un " "redémarrage):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Barre d'outils" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Large" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Moyen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Petit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "Taille des &boutons dans la barre d'outils" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "Afficher le &texte pour les boutons de la barre d'outils" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "Sélectionner les &colonnes visibles dans la vue bibliothèque" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "Supprimer une colonne définie par l'utilisateur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "Ajouter une colonne définie par l'utilisateur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "Editer les paramètres d'une colonne définie par l'utilisateur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "Utiliser l'&afficheur interne pour:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "Présentation de &l'interface utilisateur (nécessite un redémarrage):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" +"Désactiver toutes les animations. Utile si vous avez un vieil ordinateur ou " +"un ordinateur lent" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "Désactiver les &animations" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "Ajouter une adresse email où les livres seront envoyés" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "&Ajouter un email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Par &défaut" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "&Supprimer un email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" @@ -5866,35 +5965,35 @@ msgstr "" "emails seront automatiquement envoyés lors du téléchargement des News à " "toutes les adresses qui ont 'Envoyer automatiquement' coché." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" "Nombre &maximum de processus de travail en attente (nécessite un " "redémarrage):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "Vérifier l'&intégrité de la base de données" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "&Installer les outils en ligne de commande" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "Ouvrir le répertoire de &configuration de Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" "Limiter le nombre max de travaux simultanés au nombre de &cœurs de " "processeurs disponibles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "Déboguer la &détection de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " @@ -5905,25 +6004,25 @@ msgstr "" "endroit dans le monde. Toute modification des paramètres ne prendra effet " "qu'après un redémarrage du serveur." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "&Port du serveur:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "Nom d'&utilisateur:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "Mot de &passe :" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -5931,7 +6030,7 @@ msgstr "" "Si vous laisser le mot de passe à vide, tout le monde pourra accéder à votre " "collection de livres en utilisant une interface web." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -5939,45 +6038,45 @@ msgstr "" "Taille maximale (largeurxhauteur) pour l'affichage des couvertures. Les " "couvertures plus larges sont redimensionnées. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "Taille max. de la &couverture:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "&Montrer le mot de passe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "Nombre d'articles &OPDS max. par requête:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "Nombre max. d'articles OPDS &non groupés:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "Démarrer le &Serveur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "Arrêter le S&erveur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "&Tester le serveur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "Lancer &automatiquement le serveur au démarrage" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Afficher les logs du &serveur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5994,7 +6093,7 @@ msgstr "" "Stanza de votre iPhone. Ici nomhote doit être le nom d'hôte complet ou " "l'adresse IP de l'ordinateur sur lequel Calibre est démarré." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." @@ -6002,27 +6101,27 @@ msgstr "" "Ici vous pouvez personnaliser le comportement de Calibre en choisissant les " "plugins que vous souhaitez utiliser." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Activer/&Désactiver le plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "&Personnaliser le plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "Supp&rimer le plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Ajouter un nouveau plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "&Fichier plugin:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&Ajouter" @@ -6059,10 +6158,10 @@ msgid "Number" msgstr "Nombre" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Date" @@ -6095,40 +6194,45 @@ msgstr "" "Texte long, comme les commentaires, non affiché dans le navigateur " "d'étiquettes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" +"Colonne de texte pour conserver des informations semblables aux séries" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "Nombres à virgule flottante" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "Entiers" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "Notation, affichée à l'aide d'étoiles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "Oui/Non" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "Aucune colonne sélectionnée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "Aucune colonne n'a été sélectionnée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" "La colonne sélectionnée n'est pas une colonne définie par l'utilisateur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "Aucun nom n'a été fourni pour la recherche" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" @@ -6136,19 +6240,19 @@ msgstr "" "Le libellé doit seulement contenir des lettres, des chiffres et des " "underscores, et commencer par une lettre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "Aucun en-tête de colonne n'a été fourni" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "Le nom recherché %s est déjà utilisé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "L'en-tête %s est déjà utilisé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -6277,60 +6381,60 @@ msgstr "ERREUR" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 msgid "Location" -msgstr "" +msgstr "Emplacement" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "Format" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 msgid "Delete from device" -msgstr "" +msgstr "Effacer de l'appareil" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author sort" -msgstr "" +msgstr "Clé de tri d'auteur" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 msgid "Manage authors" -msgstr "" +msgstr "Gérer les auteurs" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Triage Auteur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "Cherche les métadonnées..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "Impossible de trouver les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" "Le téléchargement des métadonnées semble s'être arrêté. Essayer de nouveau " "plus tard." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Avertissement" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "Impossible de récupérer les métadonnées de:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "Aucune métadonnée trouvée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -6421,7 +6525,7 @@ msgid "Author s&ort: " msgstr "&Tri par auteur: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -6430,14 +6534,14 @@ msgstr "" "Dickens peut être classé comme Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 -#: /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:372 msgid "&Rating:" msgstr "&Note :" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "Note de ce livre. de 0 à 5 étoiles" @@ -6446,7 +6550,7 @@ msgid "No change" msgstr "Aucune modification" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " étoiles" @@ -6456,8 +6560,8 @@ msgstr "Ajouter des &étiquettes: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "Ouvre l'éditeur de mots-clefs" @@ -6490,10 +6594,6 @@ msgstr "" "Ainsi si vous avez sélectionné le livre A et puis le livre B,\n" "le livre A aura un numéro de série 1 et le livre B un numéro de série 2." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "Numérote automatiquement les livres dans ces séries" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -6511,219 +6611,219 @@ msgstr "" "sélectionnés" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "Metadonnées de &base" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "Metadonnées &personnalisées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "N'est pas une image correcte" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "Choisir les formats pour " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "Aucune permission" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "Vous n'avez par la permission de lire les fichiers suivants:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "Aucun format sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "Impossible de lire les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 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:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "Impossible de lire la couverture" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 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:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "La couverture au format %s est incompatible" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "Abandonner l'édition des livres restants" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "Le numéro ISBN est correct" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "Le numéro ISBN est incorrect" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "Editeur d'étiquettes indisponible" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" "L'éditeur d'étiquettes ne peut pas être utilisé si vous avez modifié les " "étiquettes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Télécharge la couverture..." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 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:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 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:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "Timeout lors du téléchargement." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Mauvaise couverture" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "La couverture n'est pas une image" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "Il y a eu des erreurs" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" "Il y a eu des erreurs lors du téléchargement des métadonnées sociales" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 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:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "Permission refusée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Editer les métadonnées" -#: /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:362 msgid "Meta information" msgstr "Informations sur les Métadonnées" -#: /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:365 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:371 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "Author S&ort: " msgstr "Clé de tr&i d'auteur: " -#: /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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 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:389 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 msgid "IS&BN:" msgstr "I&SBN :" -#: /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:387 msgid "Publishe&d:" msgstr "Pu&blié:" -#: /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:390 msgid "dd MMM yyyy" msgstr "dd MMM yyyy" -#: /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:391 msgid "&Date:" msgstr "&Date:" -#: /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:392 msgid "&Comments" msgstr "&Commentaires" -#: /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:393 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:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Available Formats" msgstr "Formats disponibles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 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:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 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:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 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:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 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:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "Revenir à la couverture par défaut" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Télécharger la &couverture" @@ -7095,7 +7195,7 @@ msgid "Select the content kind of the new category" msgstr "Sélectionner le type de contenu de la nouvelle catégorie" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "Êtes-vous sûr ?" @@ -7153,43 +7253,35 @@ msgid "Add tag to available tags and apply it to current book" msgstr "" "Ajoute l'étiquette à la liste des étiquettes et l'applique au livre en cours" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "L'article est vide" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" "Un article ne peut être défini à une valeur nulle. Supprimez le à la place." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "Article déjà utilisé" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "L'article %s est déjà utilisé" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "Aucun article sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" "Vous devez sélectionner un article de la liste des Articles disponibles." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "Pas d'articles sélectionnés" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "Vous devez sélectionner au moins un article de la liste." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "Etes vous sûr de vouloir supprimer les articles suivants?" @@ -7492,11 +7584,11 @@ msgstr "Expression régulière (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "Pas de correspondance" @@ -7548,31 +7640,31 @@ msgstr "Editer les métadonnées par lot" msgid "Download metadata and covers" msgstr "Télécharger les métadonnées et les couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "Télécharger seulement les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "Télécharger seulement les couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "Télécharger uniquement les métadonnées sociales" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "Fusionner dans le premier livre sélectionné - supprimer les autres" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "Fusionner dans le premier livre sélectionné - conserver les autres" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "Ajouter des livres à partir d'un répertoire" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -7580,7 +7672,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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -7588,94 +7680,100 @@ 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 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/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Sauvegarder sur le disque" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 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/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "Sauvegarder seulement le format %s vers le disque" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" "Sauvegarder seulement le format %s sur le disque dans un repertoire unique" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Visualiser" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "Visualiser le format spécifique" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "Supprimer les livres sélectionnés" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "" "Supprimer les fichiers d'un format spécifique pour les livres sélectionnés..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "Supprimer tous les formats pour les livres sélectionnés, excepté..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "Supprimer les couvertures des livres sélectionnés" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" -msgstr "" +msgstr "Supprimer les livres correspondant de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "Convertir individuellement" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Convertir par lot" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "Créer le catalogue des livres dans votre bibliothèque Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "Démarrer l'assistant de bienvenue" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "Livres similaires..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" -msgstr "" +msgstr "Ajouter des livres à la bibliothèque" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "Gérer les collections" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "Navigateur de couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "Navigateur d'étiquettes" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "Détails du livre" @@ -7747,42 +7845,42 @@ msgstr "N" msgid "Y" msgstr "Y" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "Dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Taille (Mo)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Note" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Livre %s of %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "Le nom recherché/consulté est \"{0}\"" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "Dans la bibliothèque" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "Taille" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "Marqué pour suppression" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "Double clic pour m' éditer

    " @@ -7826,11 +7924,11 @@ msgstr "Afficher la colonne" msgid "Restore default layout" msgstr "Restorer l'affichage par défaut" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Interdit" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7933,54 +8031,54 @@ msgstr "Ne pas vérifier les mises à jour" msgid "Calibre Library" msgstr "Bibliothèque Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "Choisissez un emplacement pour votre bibliothèque d'e-books Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "La création de la bibliothèque a échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "Echec de la création de la bibliothèque à: %r." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" "Choisissez un emplacement pour votre nouvelle bibliothèque d'e-books Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "Initialisation de l'interface utilisateur..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "La réparation a échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" "La réparation de la base de données a échoué. Lancement avec une nouvelle " "bibliothèque vide." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Mauvais emplacement pour la base de données" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" "Mauvais emplacement %r pour la base de données. Calibre va maintenant se " "fermer." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "Base de données corrompue" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " @@ -7990,54 +8088,54 @@ msgstr "" "essaie de la réparer automatiquement? En cas de refus, une nouvelle " "bibliothèque sera crée." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" "Réparation de la base de données. Ceci peut prendre un certain temps pour " "une collection importante." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" "Mauvais emplacement %r pour la base de données. Calibre va démarrer avec une " "nouvelle bibliothèque vide." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "Démarrage de %s en cours: Chargement des livres..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 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:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "Impossible de lancer " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s est déjà démarré." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 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:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 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:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 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:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "Essayer de redémarrer l'ordinateur." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "Essayer de supprimer le fichier" @@ -8227,23 +8325,23 @@ 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:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Trouver" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" "La recherche sélectionnée sera définitivement effacée. Êtes-vous sûr " "de vouloir continuer?" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "" "Recherche (pour une recherche avancée cliquer sur le bouton à gauche)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "Recherches sauvegardées" @@ -8319,74 +8417,74 @@ msgstr "Effacer" msgid "&Alternate shortcut:" msgstr "Raccourci &alternatif:" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" -msgstr "" +msgstr "Renommer '%s'" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" -msgstr "" +msgstr "Editer la recherche our '%s'" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "Cacher la catégorie %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "Afficher la catégorie" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "Afficher toutes les catégories" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" -msgstr "" +msgstr "Gérer %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "Gérer les Recherches Sauvegardées" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "Gérer les Catégories définies par l'Utilisateur" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "Recherches" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "Nom de recherche en double" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "Le nom de la recherche sauvegardé %s est déjà utilisé" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" -msgstr "" +msgstr "Trier par nom" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" -msgstr "" +msgstr "Trier par popularité" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" -msgstr "" +msgstr "Trier par note moyenne" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "Toutes les correspondances" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "Aucune correspondance" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "Gérer les catégories de l'&utilisateur" @@ -8458,38 +8556,38 @@ 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/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "Guide De Démarrage Rapide Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "Configuration impossible" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 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/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "Configuration impossible avant que Calibre n'ait été redémarré." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "Pas d'information détaillée disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 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/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Erreur lors de la conversion" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -8498,15 +8596,15 @@ msgstr "" "href=\"%s\">DRM. Vous devez d'abord enlever les DRM avec des outils " "tiers." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Recette désactivée" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "Échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 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." @@ -8515,11 +8613,11 @@ msgstr "" "Si vous le trouvez utile, pensez à donner afin de supporter son " "développement." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 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/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" @@ -8530,11 +8628,11 @@ msgstr "" "l'appareil.
    \n" " Êtes-vous sûr de vouloir quitter ?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "ATTENTION: Travaux actifs" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -9040,15 +9138,15 @@ msgstr "Maj+F3" msgid "Print eBook" msgstr "Imprimer un ebook" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "Copier l'image" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "Coller l'image" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -9058,7 +9156,7 @@ msgstr "" "%d\n" "Livres" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" @@ -9068,7 +9166,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" @@ -9078,7 +9176,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" @@ -9088,58 +9186,58 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 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:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 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:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 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:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 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:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "Livres situés à" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "Modifier la casse" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "Majuscule" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "Minuscule" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "Basculer la casse" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "Casse du titre" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "Faire glisser pour redimensionner" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "Afficher" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "Masquer" @@ -9451,48 +9549,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "Démarrer le serveur de &contenu" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "Aujourd'hui" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "Hier" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "Ce mois-ci" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "il y a quelques jours" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "Non" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "Non vérifié" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "Vérifié" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "Oui" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "vierge" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "Vide" @@ -10032,7 +10130,7 @@ msgstr "Affiche des informations détaillées. Utile pour le débogage" msgid "Error: You must specify a catalog output file" msgstr "Erreur: Vous devez spécifier un fichier de sortie pour le catalogue" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -10053,7 +10151,7 @@ msgstr "" "utilisant la commande custom_columns.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." @@ -10061,11 +10159,11 @@ msgstr "" "Si la colonne stocke des valeurs multiples, ajouter les valeurs spécifiées à " "celles existantes, au lieu de les remplacer." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "Erreur: Vous devez spécifier un nom, identifiant et valeur de champ" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -10080,20 +10178,20 @@ msgstr "" "colonne et les identifiants.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "Afficher les détails pour chaque colonne." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" "Vous allez perdre les données dans la colonne : %r. Êtes vous sûr (y/n)? " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "y" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -10110,15 +10208,15 @@ msgstr "" " les colonnes disponibles avec la commande custom_columns.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "Ne pas demander de confirmation" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "Erreur: Vous devez spécifier un libellé de colonne" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -10141,41 +10239,41 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/database2.py:70 msgid "%sAverage rating is %3.1f" -msgstr "" +msgstr "La note moyenne de %sest %3.1f" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "Principal" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "Carte A" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "Carte B" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "

    Migre l'ancienne base vers la bibliothèque dans %s

    " -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "Copie %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "Compacte la base" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "Vérifie l'intégrité SQL..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "Vérifie si des fichiers sont manquants." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "Id vérifié" @@ -10522,6 +10620,12 @@ msgstr "Liste de nom de recherches sauvegardées" msgid "User-created tag browser categories" msgstr "Catégories définies par l'utilisateur du navigateur d'étiquettes" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" +"Conserver toutes les collections même si elles ne font pas parti des " +"métadonnées de la bibliothèque" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "En attente..." @@ -10592,7 +10696,7 @@ msgstr "Anglais (Pakistan)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 msgid "English (Israel)" -msgstr "" +msgstr "Anglais (Israël)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 msgid "English (Singapore)" @@ -10689,91 +10793,91 @@ msgstr "" msgid "Unknown News Source" msgstr "Source de News inconnue" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" "La recette \"%s\" a besoin d'un nom d'utilisateur et d'un mot de passe." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Téléchargement effectué" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "Impossible de télécharger les articles suivants;" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "" "Impossible de télécharger certaines parties pour les articles suivants:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " de " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "\tLiens qui ont échoués:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" "Impossible de récupérer l'article. Le lancer avec -w pour en connaitre la " "raison" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "Récupération des flux..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "Obtient les flux à partir de la page d'index" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Essaie de télécharger la couverture..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "Génération du masthead" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "Commence le téléchargement [processus %d]..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Flux téléchargés de %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "Impossible de télécharger la couverture: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Télécharge la couverture de %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "L'image du titre a été téléchargée" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Article sans titre" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Article téléchargé : %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "Impossible de télécharger l'article: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "Récupération du flux" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." @@ -10781,7 +10885,7 @@ msgstr "" "La connexion a échouée, vérifier votre nom d'utilisateur et votre mot de " "passe pour le service Périodique Calibre." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -10795,12 +10899,12 @@ msgstr "Vous" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Planifié" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "Personnalisé" @@ -11384,6 +11488,18 @@ msgstr "Ne pas télécharger les feuilles de style CSS." #~ msgid "Usage:" #~ msgstr "Usage:" +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Chercher une image de couverture du livre identifié par ISBN sur " +#~ "LibraryThing.com\n" + #~ msgid "Usage: %s file.lit" #~ msgstr "Usage: %s file.lit" @@ -13189,6 +13305,24 @@ msgstr "Ne pas télécharger les feuilles de style CSS." #~ msgid "Masthead font:" #~ msgstr "Police masthead" +#~ msgid "" +#~ "If an existing book with a similar title and author is found that does not " +#~ "have the format being added, the format is added \n" +#~ "to the existing book, instead of creating a new entry. If the existing book " +#~ "already has the format, then it is silently ignored.\n" +#~ "\n" +#~ "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " +#~ "punctuation, case, etc. Author match is exact." +#~ msgstr "" +#~ "Si un livre existant avec un titre et un auteur similaire est trouvé et qui " +#~ "n'a pas le format qui a été ajouté, le format est ajouté \n" +#~ "au livre existant, au lieu de créer une nouvelle entrée.Si le livre existant " +#~ "a déjà le format, alors il sera silencieusement ignoré.\n" +#~ "\n" +#~ "La correspondance par titre ignore les articles indéfinis de tête " +#~ "(\"the\",\"a\",\"an\"), ponctuation, casse, etc. La correspondance par " +#~ "auteur est exacte." + #~ msgid "Delete current search and clear search box" #~ msgstr "Supprimer la recherche courante et effacer la boite de recherche" @@ -13204,6 +13338,17 @@ msgstr "Ne pas télécharger les feuilles de style CSS." #~ msgid "original" #~ msgstr "original" +#~ msgid "" +#~ "Do not use SVG for the book cover. Use this option if your EPUB is going to " +#~ "be used ona device that does not support SVG, like the iPhone or the " +#~ "JetBook Lite. Without this option, such devices will display the cover as a " +#~ "blank page." +#~ msgstr "" +#~ "Ne pas utiliser SVG pour la couverture du livre. Utiliser cette option si " +#~ "votre EPUB doit être utilisé sur un appareil qui ne supporte pas SVG, comme " +#~ "l'iPhone ou le Jetbook Lite. Sans cette option, ces appareils afficheront la " +#~ "couverture comme une page vide." + #~ msgid "Editing meta information for %d books" #~ msgstr "Edite les informations de métadonnées pour les livres %d" @@ -13230,6 +13375,12 @@ msgstr "Ne pas télécharger les feuilles de style CSS." #~ msgstr "" #~ "La création de la bibliothèque a échoué au %r. Interruption de la tache." +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Communiquer avec iBooks à travers iTunes." + +#~ msgid "Disconnect from folder" +#~ msgstr "Déconnecter du dossier" + #~ msgid "" #~ "The label must contain only letters and digits, and start with a letter" #~ msgstr "" @@ -13269,5 +13420,18 @@ msgstr "Ne pas télécharger les feuilles de style CSS." #~ msgid "The name %s is already used." #~ msgstr "Le nom %s est déjà utilisé." +#~ msgid "Item already used" +#~ msgstr "Article déjà utilisé" + +#~ msgid "The item %s is already used." +#~ msgstr "L'article %s est déjà utilisé" + #~ msgid "Side bar" #~ msgstr "Volet" + +#~ msgid "Downloads series information from librarything.com" +#~ msgstr "" +#~ "Télécharger les informations sur les séries à partir de librarything.com" + +#~ msgid "Connect to iTunes (EXPERIMENTAL)" +#~ msgstr "Connecter à iTunes (EXPERIMENTAL)" diff --git a/src/calibre/translations/gl.po b/src/calibre/translations/gl.po index b2ed13c62b..31bdee4b15 100644 --- a/src/calibre/translations/gl.po +++ b/src/calibre/translations/gl.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:25+0000\n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-02 18:12+0000\n" "Last-Translator: Imendez \n" "Language-Team: Galician \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-19 03:48+0000\n" +"X-Launchpad-Export-Date: 2010-07-03 03:44+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -27,28 +27,29 @@ msgstr "Non facer nada" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -71,9 +72,9 @@ msgstr "Non facer nada" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -101,49 +102,49 @@ msgstr "Non facer nada" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -179,7 +180,7 @@ msgstr "" "todos os ficheiros ligados. Este engadido execútase cada vez que se engade " "un ficheiro HTML á biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -187,7 +188,7 @@ msgstr "" "Codificación de caracteres para os ficheiros HTML de orixe. As opcións " "comúns inclúen: cp1252, latin1, iso-8859-1 e utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -197,49 +198,49 @@ msgstr "" "cartafol pmlname_img ou imaxes. Este engadido execútase cada vez que engade " "un ficheiro PML á biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Extrae a portada dos ficheiros de banda deseñada" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Ler os metadatos dos ficheiros %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Ler os metadatos dos ebooks dentro de arquivos RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Ler os metadatos dos arquivos ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Define os metadatos nos ficheiros %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Define os metadatos desde os ficheiros %s" @@ -284,7 +285,7 @@ msgstr "" "non sabe nada sobre o documento de entrada." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -295,70 +296,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Este perfil é o propio para o SONY PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Este perfil é o propio para o SONY PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Este perfil é o propio para o Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Este perfil é o propio para os libros Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Este perfil é o propio para o Hanlin V3 e os seus clones." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Este perfil é o propio para o Hanlin V5 e os seus clones." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Este perfil é o propio para o Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Este perfil é o propio para o Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Este perfil é o propio para o Kindle de Amazon." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Este perfil é o propio para o rex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Este peril é o propio para o IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Este perfil é o propio para o IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Este perfil é o propio para o B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Perfil de saída" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -368,25 +369,25 @@ msgstr "" "quere producir un documento apropiado para ser lido nun computador ou noutro " "tipo de dispositivos." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" "Sangrado para o iPad ou dispositivos semellantes cunha resolución de 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Este perfil está sangrado para o Kobo Reader." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Este perfil é o propio para o SONY PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Este perfil é o propio para o JetBook de cinco polgadas." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -394,7 +395,7 @@ msgstr "" "Este perfl é o propio para os da liña SONY PRS. Os 00/505/700 etc en modo " "apaisado. Usados sobre todo para cómics." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Este perfil é o propio o Amazon Kindle DX." @@ -473,7 +474,7 @@ msgstr "Desactivar o complemento sinalado" msgid "Communicate with Android phones." msgstr "Comunicar con teléfonos Android." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -481,54 +482,55 @@ msgstr "" "Lista de cartafoles, separados por comas, onde almacenar os libros no " "dispositivo. Usarase o primeiro que exista" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Comunicar con teléfonos S60" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." -msgstr "Comunicar con iBooks a través do iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" "Detectouse un dispositivo de Apple. Estase a iniciar o iTunes, agarde..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "Actualizando a relación de metadatos..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "%d de %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "ramtouse" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "Algúns libros non se acharon na base de datos do iTunes-" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "Configuración para os controladores de dispositivo" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "Lista ordenada de formatos que o dispositivo aceptará" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -536,18 +538,22 @@ msgstr "" "Algunhas portadas non se converteron. \n" "Prema \"Amosar detalles\" para relacionalas." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Noticias" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Comunicar co lector de libros electrónicos Binatone Readme." @@ -570,7 +576,11 @@ msgstr "Comunicarse co lector de libros electrónico Cybook Gen 3 / Opus." msgid "Communicate with the EB600 eBook reader." msgstr "Comunicar co lector EB600" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -676,10 +686,44 @@ msgstr "Comunicar co lector Kindle 2" msgid "Communicate with the Kindle DX eBook reader." msgstr "Comunicarse co lector Kindle DX" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "Comunicar co Kobo Reader" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Obtendo a lista de libros do dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "A eliminar os libros do dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Eliminando libros da lista de metatados do dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Engadindo libros á lista de metatados do dispositivo..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Comunicar co Palm Pre" @@ -688,6 +732,10 @@ msgstr "Comunicar co Palm Pre" msgid "Communicate with the Booq Avant" msgstr "Comunicar co Booq Avant" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "Comunicar coa táboa de internet Nokia 770." @@ -696,6 +744,10 @@ msgstr "Comunicar coa táboa de internet Nokia 770." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Comunicar co táboa de internet Nokia 810." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "O Nook" @@ -724,7 +776,7 @@ msgstr "" "Lista separada por comas de campos de metadatos para convertelos en " "coleccións no dispositivo. As posibilidades son: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "Sen nome" @@ -745,23 +797,23 @@ msgstr "Comunicar co lector de Newsmy" msgid "Communicate with the iPapyrus reader." msgstr "Comunicar co lector de iPapyrus." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "Non se puido detectar a unidade de disco %s. Probe a reiniciar." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "Non é posible detectar o punto de montaxe %s. Tente reiniciar." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "Non se puido detectar a unidade de disco %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "Non é posible atopar o asistente para a montaxe: %s" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." @@ -769,25 +821,25 @@ msgstr "" "No se puido detectar a unidade de disco %s. Probablemente o núcleo está " "exportando una versión anticuada de SYSFS." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "Non é posible montar a memoria principal (código do erro: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "O lector non ten ningunha tarxeta de memoria no slot." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "A bahía %s seleccionada non está soportada." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "O espazo libre na memoria principal é insuficiente" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "O espazo libre na tarxeta de memoria é insuficiente" @@ -795,25 +847,33 @@ msgstr "O espazo libre na tarxeta de memoria é insuficiente" msgid "Configure Device" msgstr "Configurar o Dispositivo" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "Configuración para os controladores de dispositivo" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Lista ordenada de formatos que o dispositivo aceptará" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "" "Colocar os ficheiros dentro de subcartafoles se o dispositivo os soporta" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Ler os metadatos dos ficheiros no dispositivo" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Modelo para controlar como se gardan os libros" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Personalización adicional" @@ -826,36 +886,12 @@ msgstr "Comunicar cun lector de eBook." msgid "Get device information..." msgstr "Obter información do dispositivo..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "Obtendo a lista de libros do dispositivo..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "A transferir os libros ao dispositivo..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "Engadindo libros á lista de metatados do dispositivo..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "A eliminar os libros do dispositivo..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "Eliminando libros da lista de metatados do dispositivo..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "A enviar metadatos ao dispositivo..." @@ -1659,7 +1695,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" @@ -1695,7 +1731,7 @@ msgstr "Non incluír un Índice ao principio do libro." msgid "Add Table of Contents to beginning of the book." msgstr "Engadir Índice ao principio do libro" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1703,7 +1739,7 @@ msgstr "" "Facer unha recollida en largura das ligazóns en ficheiros HTML. Normalmente, " "faise unha recollida en profundidade." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1713,7 +1749,7 @@ msgstr "" "ser negativo. O valor 0 implica que non se seguirá ningunha ligazón no " "ficheiro HTML raíz. O valor predefinido é %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1725,7 +1761,7 @@ msgstr "" "que está facendo, xa que pode ocasionar varios efectos desagradábeis no " "resto do proceso de conversión." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1870,7 +1906,7 @@ msgid "Path to output file" msgstr "Camiño do ficheiro de saída" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Procesado por petición" @@ -1968,88 +2004,86 @@ msgstr "Familia de letra monoespazada para incorporar." msgid "Comic" msgstr "Cómic" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Título" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autores/as" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Editor" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Produtor" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Comentarios" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Etiquetas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Series" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Idioma" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Marca temporal" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publicado" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Dereitos" @@ -2179,39 +2213,43 @@ msgstr "Capa gardada en" msgid "No cover found" msgstr "Non se achou capa ningunha" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Descarga de metadatos" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "puntuacións" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "etiquetas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "descrición/críticas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "Descargar %s desde %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Descarga os metadatos do Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Descara os metadatos de isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2219,15 +2257,15 @@ msgstr "" "Para empregar o isbndb.com, é preciso ter unha %sconta gratuíta%s e escribir " "a súa chave de acceso abaixo." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Descarga os metadatos de amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2241,27 +2279,27 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "O ISBN do libro cuxos metatados se precisan." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "O autor cuxo libro se pretende procurar." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "O título do libro polo que procurar." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "A editorial do libro polo que procurar." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "LibraryThing.com execedeu o tempo. Ténteo máis tarde." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2269,29 +2307,25 @@ msgstr "" "Non se puido obter a portada xa que o servidor ten unha carga excesiva. " "Ténteo máis tarde." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " non se achou." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "Houbo un erro no servidor de LibraryThing.com. Ténteo máis tarde." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" -msgstr "" -"\n" -"%prog [options] ISBN\n" -"\n" -"Obter unha imaxe da capa do libro identificado polo ISBD de " +"Fetch a cover image/social metadata for the book identified by ISBN from " "LibraryThing.com\n" +msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Capa" @@ -2335,70 +2369,70 @@ msgstr "Todos os artigos" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "Este é un libro Topaz de Amazon. Por tanto, non se pode procesar." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Páxina de título" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Índice de Contidos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Índice" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Glosario" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Agradecementos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliografia" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Colofón" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Dereitos de copia" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Dedicatoria" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epígrafe" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Prólogo" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Lista de Ilustracións" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Lista de Táboas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Notas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Prefacio" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Texto Principal" @@ -2953,283 +2987,287 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Copiado" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Copiar" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Copiar no Portapapeis" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Escoller os Ficheiros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "Usar só a biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
    Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
    Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
    %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "Arquivos" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Erro" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

    The second and subsequently selected " @@ -3237,7 +3275,7 @@ msgid "" "proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

    After merger the second and " @@ -3247,99 +3285,99 @@ msgid "" "from your computer.

    Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "Non é posíbel gardar no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "Non se acharon libros" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "Obtendo novas de " -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "Escoller o formato de visualización" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -3347,11 +3385,11 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "" @@ -3359,60 +3397,60 @@ msgstr "" msgid "Searching in" msgstr "A Buscar" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "A engadir..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Erro no camiño" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "Non se puido procesar o directorio especificado." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Sen libros" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Engadido" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "Erro ao engadir" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Acháronse duplicados!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "A engadir os duplicados..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "A gardar..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Gardado" @@ -3500,23 +3538,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3559,55 +3597,56 @@ msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Camiño" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formatos" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Ningún" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3656,7 +3695,7 @@ msgstr "saída" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3666,7 +3705,7 @@ msgstr "saída" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3688,8 +3727,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" @@ -4124,118 +4163,118 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Escoller a capa para " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Non se puido ler" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "Non ten permiso para ler o ficheiro " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Erro ao ler o ficheiro" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

    There was an error reading from file:
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " non é unha imaxe válida" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Capa do Libro" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -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:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Mudar a imaxe da &capa" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Título " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Autores/as: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "&Ordenación por autor/a" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "&Etiquetas " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Libro " @@ -4320,12 +4359,12 @@ msgid "PDB Input" msgstr "Entrada PDB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "Asumir o formatado de impresión" @@ -4451,12 +4490,12 @@ msgid "Footer regular expression:" msgstr "Expresión regular do pé de páxina:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 msgid "Invalid regular expression" msgstr "Expresión regular non válida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Expresión regular non válida: %s" @@ -4540,22 +4579,22 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -4677,6 +4716,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4705,263 +4745,280 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "Conectado " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" @@ -5052,238 +5109,238 @@ msgstr "" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Xeral" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Interface" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Avanzado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Complementos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "Correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" "Formatos para o correo. O primeiro formato que coincida será o enviado." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "O camiño do engadido non é correcto" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s non é correcto como camiño do engadido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -5291,35 +5348,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -5327,355 +5384,380 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "Ficheiro &formatos para gardar:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Preferencias" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Normal" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Alto" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Baixo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Grande" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Medio" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Pequeno" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "&Quitar correo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /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:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5686,33 +5768,33 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&Quitar engadido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "" @@ -5749,10 +5831,10 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Data" @@ -5781,57 +5863,61 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5945,7 +6031,7 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "Formato" @@ -5961,39 +6047,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -6072,21 +6158,21 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 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:162 -#: /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:372 msgid "&Rating:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "" @@ -6095,7 +6181,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr "" @@ -6105,8 +6191,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "" @@ -6134,10 +6220,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -6150,207 +6232,207 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "Escolla os formatos para " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "Permiso denegado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "Non é posíbel oter metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Editar metainformación" -#: /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:362 msgid "Meta information" msgstr "" -#: /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:365 msgid "Swap the author and title" msgstr "" -#: /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:368 msgid "Author S&ort: " 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "Quitar series inútiles (Series que non teñen libros)" -#: /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:386 msgid "IS&BN:" 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:387 msgid "Publishe&d:" msgstr "" -#: /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:390 msgid "dd MMM yyyy" msgstr "" -#: /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:391 msgid "&Date:" 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:392 msgid "&Comments" msgstr "" -#: /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:393 msgid "&Fetch metadata from server" msgstr "&Obter metadatos desde servidor" -#: /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:394 msgid "Available Formats" msgstr "Formatos dispoñíbeis" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "Quitar os formatos seleccionados para este libro da base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "" @@ -6697,7 +6779,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" @@ -6747,41 +6829,33 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -7045,11 +7119,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "" @@ -7101,128 +7175,134 @@ msgstr "" msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Gardar no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "Gardar no disco nun único cartafol" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Ver" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "Quitar os libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "" @@ -7293,42 +7373,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Puntuación" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "" @@ -7372,11 +7452,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Non permitido" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7477,99 +7557,99 @@ msgstr "" msgid "Calibre Library" msgstr "Biblioteca do Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" @@ -7748,20 +7828,20 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Buscar" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "" @@ -7837,74 +7917,74 @@ msgstr "Limpar" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "" @@ -7971,72 +8051,72 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
    %%(device)s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "Non se pode configurar mentres haxa traballos en execución." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Hai traballos en activo. Está seguro de querer saír?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "Aviso: traballos en activo" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8519,15 +8599,15 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -8537,76 +8617,76 @@ msgstr "" "%d\n" "libros" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "" @@ -8870,48 +8950,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "Prender o servidor de &contidos" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -9297,7 +9377,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -9309,17 +9389,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -9328,19 +9408,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -9350,15 +9430,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9374,39 +9454,39 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "A copiar %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "A compactar a base de datos" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "A comprobar a integridade SQL..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "A comprobar os ficheiros perdidos." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "id comprobada" @@ -9706,6 +9786,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "A esperar..." @@ -9867,93 +9951,93 @@ msgstr "" msgid "Unknown News Source" msgstr "Fonte de Novas Descoñecida" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Rematou a descarga" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "Produciuse un fallo na descarga dos seguintes artigos:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "Produciuse un fallo na descarga de partes do seguintes artigos:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " desde " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "\tLigazóns erradas:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "A obter os fluxos..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Tratando de descargar a capa..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "A comezar a descarga [%d fío(s)]..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Fluxos descargados en %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "Non se puido descargar a capa: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "A descargar a capa desde %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Artigo sen Título" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Artigo descargado: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "Erro ao descargar o artigo: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "A obter o fluxo" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9965,12 +10049,12 @@ msgstr "Vostede" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Programado" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "Personalizado" @@ -10080,3 +10164,18 @@ msgstr "Non descargar follas de estilo CSS" #~ "Non forzar a xustificación do texto na saída. Que o texto se mostre " #~ "xustificado ou non en realidade, depende de se o formato de libro " #~ "electrónico e o dispositivo de lectura admiten o texto xustificado." + +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Comunicar con iBooks a través do iTunes." + +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Obter unha imaxe da capa do libro identificado polo ISBD de " +#~ "LibraryThing.com\n" diff --git a/src/calibre/translations/he.po b/src/calibre/translations/he.po index 9487b1627d..49d67316b5 100644 --- a/src/calibre/translations/he.po +++ b/src/calibre/translations/he.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 16:52+0000\n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-02 18:28+0000\n" "Last-Translator: Kovid Goyal \n" "Language-Team: Hebrew \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-19 03:48+0000\n" +"X-Launchpad-Export-Date: 2010-07-03 03:44+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -27,28 +27,29 @@ msgstr "לא עושה דבר" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -71,9 +72,9 @@ msgstr "לא עושה דבר" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -101,49 +102,49 @@ msgstr "לא עושה דבר" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -178,62 +179,62 @@ msgstr "" "עקוב אחר כל הקישורים המקומיים בקובץ HTML וצור קובץ ZIP המכיל את כל הקבצים " "המקושרים. תוסף זה רץ בכל פעם שמתווסף קובץ HTML לספרייה." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " "file to the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "חלץ עטיפה מקובץ קומיקס" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "קרא תגיות מטא מ- %s קבצים" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "קרא תגיות מטא מספרים בקובץ ארכיון RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "קרא תגיות מטא מספרים בקובץ ארכיון ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "כתוב תגיות מטא מ- %s קבצים" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "כתוב תגיות מטא מ- %s קבצים" @@ -276,7 +277,7 @@ msgstr "" "מקור המסמך." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "פרופיל זה מיועד עבור SONY PRS line מדגמים 500/505/600/700 ועוד." @@ -286,70 +287,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "פרופיל זה מיועד עבור SONY PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "פרופיל זה מיועד עבור SONY PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "פרופיל זה מיועד עבור Microsoft Reader" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "פרופיל זה מיועד עבור Mobipocket books." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "פרופיל זה מיועד עבור Hanlin V3 ומכשירים דומים." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "פרופיל זה מיועד עבור Hanlin V5 ומכשירים דומים" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "פרופיל זה מיועד עבור Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "פרופיל זה מיועד עבור Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "פרופיל זה מיועד עבור Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "פרופיל זה מיועד עבור Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "פרופיל זה מיועד עבור IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "פרופיל זה מיועד עבור IRex Digital Reader 800" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "פרופיל זה מיועד עבור B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "פרופיל פלט" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -358,24 +359,24 @@ msgstr "" "פרופיל זה מנסה לת ברירות מחדל סבירות והוא יעיל במידה ואתה רוצה להפיק מסמך " "שנועד להקרא במחשב או על מגוון מכשירים." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "מיועד ל-iPad ומכשירים דומים עם רזולוציה של 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "פרופיל זה מיועד ל-Kobo Reader" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "פרופיל זה מיועד למכשיר SONY PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "פרופיל זה מיועד למכשיר 5-inch JetBook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -383,7 +384,7 @@ msgstr "" "פרופיל זה מיועד למכשיר מקו SONY PRS. ה- 500/505/700 וכדומה בתצוגה " "אופקית.שימושי במיוחד עבור קומיקס." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "פרופיל זה מיועד למכשיר Amazon Kindle DX." @@ -453,76 +454,81 @@ msgstr "" msgid "Communicate with Android phones." msgstr "מתקשר עם טלפון Android." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" msgstr "רשימת ספריות מופרדות בפסיקל שליחת ספרשת למכשיר." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "הגדרות דרייברים למכשיר." - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "רשימת סוגי קבצים שהמכשיר מסוגל לקבל." - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "חדשות" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "מתקשר עם Binatone Readme eBook reader." @@ -545,7 +551,11 @@ msgstr "מחליף נתונים עם Cybook Gen 3 / Opus eBook reader." msgid "Communicate with the EB600 eBook reader." msgstr "מחליף נתונים עם EB600 eBook reader." -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -651,10 +661,44 @@ msgstr "" msgid "Communicate with the Kindle DX eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "קורא את רשימת הספרים מההתקן..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "מסיר ספרים מהמכשיר" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "מסיר ספרים מרשימת הספרים במכשיר" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "מוסיף ספרים לרשימת הספרים במכשיר" + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "" @@ -663,6 +707,10 @@ msgstr "" msgid "Communicate with the Booq Avant" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "" @@ -671,6 +719,10 @@ msgstr "" msgid "Communicate with the Nokia 810 internet tablet." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "מכשיר ה-Nook" @@ -697,7 +749,7 @@ msgid "" "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "" @@ -718,47 +770,47 @@ msgstr "" msgid "Communicate with the iPapyrus reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "לא מצליח למצוא את כונן %s. נסה לאתחל את המכשיר." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "לא מצליח למצוא את כונן %s." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." msgstr "לא מצליח למצוא את כונן %s. המעבד מיצא גרסה נפרדת של SYSFS" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "לא מצליח להעלות זכרון ראשי (קוד שגיאה: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "למכשיר אין כרטיס זיכרון בחריץ." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "החריץ הנבחר: %s לא נתמך." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "אין מספיק מקום פנוי על הזכרון הראשי." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "אין מספיק מקום פנוי על כרטיס הזכרון." @@ -766,24 +818,32 @@ msgstr "אין מספיק מקום פנוי על כרטיס הזכרון." msgid "Configure Device" msgstr "קבע תצורת מכשיר" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "הגדרות דרייברים למכשיר." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "רשימת סוגי קבצים שהמכשיר מסוגל לקבל." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "שים קבצים בתיקיות משנה במידה והמכשיר תומך באפשרות." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "קרא מטר תגיות מקבצים במכשיר." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "תבנית לשליטה על אפשרויות שמירת ספרים." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "הגדרות נוספות" @@ -796,36 +856,12 @@ msgstr "מחליף נתונים עם eBook reader" msgid "Get device information..." msgstr "מקבל מידע ממכשיר..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "קורא את רשימת הספרים מההתקן..." - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "מעביר ספרים למכשיר" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "מוסיף ספרים לרשימת הספרים במכשיר" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "מסיר ספרים מהמכשיר" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "מסיר ספרים מרשימת הספרים במכשיר" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "שולח מטא תגיות למכשיר" @@ -1466,7 +1502,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" @@ -1502,20 +1538,20 @@ msgstr "" msgid "Add Table of Contents to beginning of the book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " "Default is %default." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1523,7 +1559,7 @@ msgid "" "pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1656,7 +1692,7 @@ msgid "Path to output file" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "" @@ -1738,88 +1774,86 @@ msgstr "" msgid "Comic" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "" @@ -1926,53 +1960,57 @@ msgstr "" msgid "No cover found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -1986,50 +2024,51 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "" @@ -2068,70 +2107,70 @@ msgstr "" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "" @@ -2604,283 +2643,287 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
    Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
    Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
    %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

    The second and subsequently selected " @@ -2888,7 +2931,7 @@ msgid "" "proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

    After merger the second and " @@ -2898,99 +2941,99 @@ msgid "" "from your computer.

    Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -2998,11 +3041,11 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "" @@ -3010,60 +3053,60 @@ msgstr "" msgid "Searching in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "" @@ -3151,23 +3194,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3210,55 +3253,56 @@ msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3307,7 +3351,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3317,7 +3361,7 @@ msgstr "" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3339,8 +3383,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" @@ -3775,118 +3819,118 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

    There was an error reading from file:
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -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:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 -msgid "&Title: " +msgid "Use cover from &source file" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 -msgid "Change the title of this book" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +msgid "&Title: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 -msgid "&Author(s): " +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +msgid "Change the title of this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 -msgid "Author So&rt:" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +msgid "&Author(s): " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +msgid "Author So&rt:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "" @@ -3971,12 +4015,12 @@ msgid "PDB Input" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -4100,12 +4144,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "" @@ -4189,22 +4233,22 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -4326,6 +4370,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4354,263 +4399,280 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" @@ -4701,237 +4763,237 @@ msgstr "" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4939,35 +5001,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -4975,355 +5037,380 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 -msgid "Add an email address to which to send books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 -msgid "&Add email" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 -msgid "Make &default" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 -msgid "&Remove email" +msgid "Disable all animations. Useful if you have a slow/old computer." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +msgid "Add an email address to which to send books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +msgid "&Add email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +msgid "Make &default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +msgid "&Remove email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /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:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5334,33 +5421,33 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "" @@ -5397,10 +5484,10 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "" @@ -5429,57 +5516,61 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5593,7 +5684,7 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "" @@ -5609,39 +5700,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5720,21 +5811,21 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 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:162 -#: /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:372 msgid "&Rating:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "" @@ -5743,7 +5834,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr "" @@ -5753,8 +5844,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "" @@ -5782,10 +5873,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -5798,207 +5885,207 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "" -#: /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:362 msgid "Meta information" msgstr "" -#: /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:365 msgid "Swap the author and title" msgstr "" -#: /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:368 msgid "Author S&ort: " 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /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:386 msgid "IS&BN:" 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:387 msgid "Publishe&d:" msgstr "" -#: /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:390 msgid "dd MMM yyyy" msgstr "" -#: /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:391 msgid "&Date:" 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:392 msgid "&Comments" msgstr "" -#: /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:393 msgid "&Fetch metadata from server" 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:394 msgid "Available Formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "" @@ -6345,7 +6432,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "" @@ -6395,41 +6482,33 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -6693,11 +6772,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "" @@ -6749,128 +6828,134 @@ msgstr "" msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 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/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 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/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "" @@ -6941,42 +7026,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "" @@ -7020,11 +7105,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7125,99 +7210,99 @@ msgstr "" msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" @@ -7396,20 +7481,20 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "" @@ -7485,74 +7570,74 @@ msgstr "" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "" @@ -7619,72 +7704,72 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
    %%(device)s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8167,91 +8252,91 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "" @@ -8515,48 +8600,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -8942,7 +9027,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -8954,17 +9039,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -8973,19 +9058,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -8995,15 +9080,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9019,39 +9104,39 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" @@ -9351,6 +9436,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -9512,93 +9601,93 @@ msgstr "" msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9612,12 +9701,12 @@ msgstr "" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "" diff --git a/src/calibre/translations/it.po b/src/calibre/translations/it.po index 5f0196b75a..12718e182d 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: 2010-06-11 22:51+0000\n" -"PO-Revision-Date: 2010-06-11 18:44+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-07 13:36+0000\n" +"Last-Translator: MeltingShell \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: 2010-06-12 03:42+0000\n" +"X-Launchpad-Export-Date: 2010-07-08 03:47+0000\n" "X-Generator: Launchpad (build Unknown)\n" "X-Poedit-Bookmarks: -1,-1,-1,-1,-1,1105,-1,1312,-1,-1\n" "Generated-By: pygettext.py 1.5\n" @@ -26,39 +26,40 @@ msgstr "Non fa assolutamente niente" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:46 #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:72 -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:75 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:431 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:230 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:270 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:273 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:373 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:19 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:123 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:125 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:943 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1055 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:945 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1057 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:39 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:28 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pml.py:23 @@ -74,9 +75,9 @@ msgstr "Non fa assolutamente niente" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -104,47 +105,49 @@ msgstr "Non fa assolutamente niente" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:286 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:293 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:674 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:955 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:368 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:843 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1300 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1303 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:302 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:314 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:880 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:917 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1515 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1517 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1639 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:131 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114 -#: /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/localization.py:115 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -178,9 +181,9 @@ msgid "" msgstr "" "Segue tutti i collegamenti in un file HTML e crea un file ZIP contenente " "tutti i file collegati. Questo plug-in viene eseguito ogni volta che si " -"aggiunge un file HTML alla libreria." +"aggiunge un file HTML alla biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -188,65 +191,65 @@ msgstr "" "Codifica dei caratteri nei file HTML in ingresso. Scelte comuni includono: " "cp1252, latin1, iso-8859-1 e utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " "file to the library." msgstr "" -"Creare un archivio PMLZ che contiene il documento PML e tutte le immagini " -"nella cartella /pmlname_img or /images. Questo plug-in è eseguito ogni volta " -"che si aggiunge un documento PML alla libreria." +"Crea un archivio PMLZ che contiene il documento PML e tutte le immagini " +"nella cartella pmlname_img o in images. Questo plug-in è eseguito ogni volta " +"che si aggiunge un documento PML alla biblioteca." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Estrae le copertine dai file dei fumetti" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Leggi i metadati dai file %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Leggi i metadati dei libri negli archivi RAR" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Leggi i metadati dei libri negli archivi ZIP" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Imposta i metadati nei file %s" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "imposta metadati da %s file" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:102 msgid "Conversion Input" -msgstr "Input per la conversione" +msgstr "Input di conversione" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:125 msgid "" @@ -285,7 +288,7 @@ msgstr "" "nulla sul documento di origine." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -297,70 +300,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Questo profilo è adatto per il Sony PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:300 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Questo profilo è adatto per il Sony PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:330 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Questo profilo è adatto per il Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Questo profilo è adatto per i libri in formato Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:354 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Questo profilo è adatto per l'Hanlin V3 ed i suoi cloni." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:366 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Questo profilo è adatto per Hanlin V5 e i suoi cloni." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:374 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Questo profilo è adatto per il Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:387 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Questo profilo è adatto per il Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:398 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Questo profilo è adatto per il Kindle di Amazon." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:433 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Questo profilo è adatto per l'Irex di Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:446 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Questo profilo è adatto per l'IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:460 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Il profilo è adatto per l'IRex Digital Reader 800" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:474 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Questo profilo è adatto per il Nook B&N." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Profilo di output" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -370,24 +373,24 @@ msgstr "" "produrre un documento che dovrebbe essere letto tramite computer o su vari " "dispositivi di lettura" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "Inteso per iPad e simili dispositivi con una risoluzione di 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." -msgstr "Questo profilo e' inteso per il dispositivo Kobo Reader" +msgstr "Questo profilo è pensato per il dispositivo Kobo Reader." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:291 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Questo profilo è adatto per il Sony PRS-300." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:309 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Questo profilo è adatto per il JetBook 5-inch." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:318 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -395,7 +398,7 @@ msgstr "" "Questo profilo è adatto per la linea SONY PRS. Il 500/505/700 etc., in " "modalità landscape. Utile principalmente per i fumetti." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:416 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Questo profilo è adatto per il Kindle DX di Amazon." @@ -415,15 +418,19 @@ msgstr "Personalizzazione dei plug-in locali" msgid "Disabled plugins" msgstr "Plugin disabilitati" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:77 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 +msgid "Enabled plugins" +msgstr "Plugin attivati" + +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " msgstr "Nessun plug-in valido trovato in " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:278 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:460 msgid "Initialization of plugin %s failed with traceback:" msgstr "Inizializzazione del plugin %s fallita con messaggio:" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:433 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:493 msgid "" " %prog options\n" "\n" @@ -435,17 +442,17 @@ msgstr "" " Personalizza Calibre con l'utilizzo di plugin esterni\n" " " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:499 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "" "Aggiunge un plug-in specificando il percorso al file zip che lo contiene." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:441 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:501 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" "Rimuovi un plugin personalizzato dal nome. Non ha effetto sui plugin inclusi" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:443 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:503 msgid "" "Customize plugin. Specify name of plugin and customization string separated " "by a comma." @@ -453,15 +460,15 @@ msgstr "" "Personalizza un plug-in. Specificare il nome del plug-in e la stringa di " "personalizzazione separati da una virgola." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:445 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:505 msgid "List all installed plugins" msgstr "Elenca tutti i plug-in installati" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:507 msgid "Enable the named plugin" msgstr "Abilita il plug-in" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:449 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:509 msgid "Disable the named plugin" msgstr "Disabilita il plug-in" @@ -469,71 +476,91 @@ msgstr "Disabilita il plug-in" msgid "Communicate with Android phones." msgstr "Comunica con i telefoni Android." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" msgstr "" -"Listato delle cartelle in formato separato da virgole da inviare come e-book " -"al dispositivo di lettura. Si uerá Il primo nella lista esistente." +"Lista delle cartelle separate da virgole da inviare come e-book al " +"dispositivo. Verrà usata Ia prima esistente." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." -msgstr "" +msgstr "Comunica con i telefoni S60." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:75 -msgid "Communicate with iBooks through iTunes." -msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "Comunica con iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." -msgstr "" +msgstr "Dispositivo Apple individuato, avvio di iTunes, attendere prego ..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:196 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:214 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:217 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." -msgstr "" +msgstr "Aggiornamento dei metadati sul dispositivo..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:282 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:318 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 #: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:947 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" -msgstr "" +msgstr "%d di %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:325 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:952 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" -msgstr "" +msgstr "completato" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:499 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Usa le serie come categoria per iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "Conserva le copertine da iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" +"Alcuni libri non sono stati trovati nel database di iTunes.\n" +"Eliminarli utilizzando l'app iBooks.\n" +"Fare clic su 'Mostra dettagli' per una lista." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "Impostazioni dei driver del dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:705 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "" -"Lista ordinata dei formati che il dispositivo di lettura può accettare." - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" +"Alcune copertine non possono essere convertite.\n" +"Fare clic su 'Mostra dettagli' per una lista." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:167 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:180 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 +msgid "News" +msgstr "Notizie" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Comunica con iTunes." #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." -msgstr "Comunica con il dispositivo di lettura Binatone Readme" +msgstr "Comunica con il lettore Binatone Readme." #: /home/kovid/work/calibre/src/calibre/devices/blackberry/driver.py:13 msgid "Communicate with the Blackberry smart phone." @@ -547,11 +574,19 @@ msgstr "Kovid Goyal" #: /home/kovid/work/calibre/src/calibre/devices/cybook/driver.py:22 msgid "Communicate with the Cybook Gen 3 / Opus eBook reader." -msgstr "Comunica con Cybook Gen 3 / Opus ebook reader" +msgstr "Comunica con il lettore Cybook Gen 3 / Opus." #: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:24 msgid "Communicate with the EB600 eBook reader." -msgstr "Comunica con il lettore eBook EB600." +msgstr "Comunica con il lettore EB600." + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Comunica con l'Astak Mentor EB600" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 +msgid "Communicate with the PocketBook 301 reader." +msgstr "Comunica con il lettore PocketBook 301." #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" @@ -559,16 +594,20 @@ msgstr "Entourage Edge" #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:18 msgid "Communicate with the Entourage Edge." -msgstr "Comunica con Entourage Edge" +msgstr "Comunica con Entourage Edge." #: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:16 msgid "Communicate with the ESlick eBook reader." -msgstr "Comunica con l'ESlick eBook reader." +msgstr "Comunica con il lettore ESlick." + +#: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:49 +msgid "Communicate with the Sigmatek eBook reader." +msgstr "Comunica con il lettore Sigmatek eBook." #: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:16 #: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:30 msgid "Use an arbitrary folder as a device." -msgstr "" +msgstr "Usa una cartella a scelta come dispositivo." #: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:26 #: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 @@ -579,37 +618,45 @@ msgstr "Interfaccia del Dispositivo" msgid "Communicate with Hanlin V3 eBook readers." msgstr "Comunica con i lettori Hanlin V3." -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:90 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:87 msgid "Communicate with Hanlin V5 eBook readers." msgstr "Comunica con i lettori Hanlin V5." -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:109 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:106 msgid "Communicate with the BOOX eBook reader." msgstr "Comunica con i lettori BOOX." +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:121 +msgid "" +"Comma separated list of directories to send e-books to on the device. The " +"first one that exists will be used." +msgstr "" +"Lista di cartelle separate da virgole per inviare gli e-books al " +"dispositivo. Verrà utilizzata la prima esistente." + #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." -msgstr "Comunica con il dispositivo di lettura Hanvon N520" +msgstr "Comunica con il lettore Hanvon N520." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:40 msgid "Communicate with The Book reader." -msgstr "" +msgstr "Comunica con il lettore The Book." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:51 msgid "Communicate with the SpringDesign Alex eBook reader." -msgstr "" +msgstr "Comunica con il lettore SpringDesign Alex." #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:67 msgid "Communicate with the Azbooka" -msgstr "" +msgstr "Comunica con l'Azbooka" #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:80 msgid "Communicate with the Elonex EB 511 eBook reader." -msgstr "Comunica con il Elonex EB 511 eBook reader" +msgstr "Comunica con il lettore Elonex EB 511." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:16 msgid "Communicate with the IRex Iliad eBook reader." -msgstr "Comunica con il lettore eBook IRex Iliad." +msgstr "Comunica con il lettore IRex Iliad." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:17 #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:18 @@ -619,190 +666,40 @@ msgstr "John Schember" #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:16 msgid "Communicate with the IRex Digital Reader 1000 eBook reader." -msgstr "Comunica con il lettore eBook IRex Digital Reader." +msgstr "Comunica con il lettore IRex Digital Reader." #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:42 msgid "Communicate with the IRex Digital Reader 800" -msgstr "Comunica con il IRex Digital Reader 800" +msgstr "Comunica con il lettore IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/devices/iriver/driver.py:15 msgid "Communicate with the Iriver Story reader." -msgstr "Comunicare con il Iriver Story reader." +msgstr "Comunica con il lettore Iriver Story." #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:20 msgid "Communicate with the JetBook eBook reader." -msgstr "Comunicare con il JetBook eBook reader" +msgstr "Comunica con il lettore JetBook." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:21 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:42 msgid "Communicate with the Kindle eBook reader." -msgstr "Comunicare con il Kindle eBook reader" +msgstr "Comunica con il lettore Kindle." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:147 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:169 msgid "Communicate with the Kindle 2 eBook reader." -msgstr "Comunicare con il Kindle 2 eBook reader." +msgstr "Comunica con il lettore Kindle 2." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:210 msgid "Communicate with the Kindle DX eBook reader." -msgstr "Comunicazione in corso con in Kindle DX" +msgstr "Comunica con il lettore Kindle DX." -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 -msgid "Communicate with the Palm Pre" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:35 -msgid "Communicate with the Booq Avant" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 -msgid "Communicate with the Nokia 770 internet tablet." -msgstr "Comunica con il Nokia 770 Internet Tablet." - -#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:40 -msgid "Communicate with the Nokia 810 internet tablet." -msgstr "Comunica con il Nokia 810 internet Tablet" - -#: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 -msgid "The Nook" -msgstr "Il lettore Nook" - -#: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:21 -msgid "Communicate with the Nook eBook reader." -msgstr "Comunica con il Nook Ebook Reader." - -#: /home/kovid/work/calibre/src/calibre/devices/nuut2/driver.py:17 -msgid "Communicate with the Nuut2 eBook reader." -msgstr "Comunicare con il Nuut2 eBook reader." - -#: /home/kovid/work/calibre/src/calibre/devices/prs500/driver.py:89 -msgid "Communicate with the Sony PRS-500 eBook reader." -msgstr "Comunicare con il Sony PRS-500 eBook reader." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:22 -msgid "Communicate with all the Sony eBook readers." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:60 -msgid "" -"Comma separated list of metadata fields to turn into collections on the " -"device. Possibilities include: " -msgstr "" -"Lista di campi \"metadata\" separati da virgole da convertire in collezioni " -"sul dispositivo. Fra le possibilità: " - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:142 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 -msgid "Unnamed" -msgstr "Senza nome" - -#: /home/kovid/work/calibre/src/calibre/devices/sne/driver.py:17 -msgid "Communicate with the Samsung SNE eBook reader." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:11 -msgid "Communicate with the Teclast K3 reader." -msgstr "Comunica con il Teclast K3 reader." - -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:37 -msgid "Communicate with the Newsmy reader." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:49 -msgid "Communicate with the iPapyrus reader." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:247 -msgid "Unable to detect the %s disk drive. Try rebooting." -msgstr "Impossibile individuare il disco %s. Provare a riavviare." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:427 -msgid "Unable to detect the %s mount point. Try rebooting." -msgstr "" -"Impossibile individuare il %s mount Point. Provo ad effettuare un reboot" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:492 -msgid "Unable to detect the %s disk drive." -msgstr "Impossibile rilevare il disco %s." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:585 -msgid "Could not find mount helper: %s." -msgstr "Non é stato possibile trovare l'assistente di installazione: %s" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:597 -msgid "" -"Unable to detect the %s disk drive. Your kernel is probably exporting a " -"deprecated version of SYSFS." -msgstr "" -"mpossibile rilevare il disco %s. Il kernel in uso sta probabilmente " -"esportando una versione obsoleta di SYSFS." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:605 -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:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 -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:746 -msgid "Selected slot: %s is not supported." -msgstr "Lo slot selezionato: %s non è supportato." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 -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:777 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:779 -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:809 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:815 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:843 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:141 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:152 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1399 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:120 -msgid "News" -msgstr "Notizie" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:12 -msgid "Configure Device" -msgstr "Configura il dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 -msgid "Place files in sub directories if the device supports them" -msgstr "" -"Metti i file in sotto cartelle se il dispositivo di lettura le supporta" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 -msgid "Read metadata from files on device" -msgstr "Legge i metadati dai file sul dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 -msgid "Template to control how books are saved" -msgstr "Modello per controllare come i libri vengono salvati" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -msgid "Extra customization" -msgstr "Ulteriori personalizzazioni" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:37 -msgid "Communicate with an eBook reader." -msgstr "Comunicare wcon un eBook reader." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:53 -msgid "Get device information..." -msgstr "Reperimento informazioni del dispositivo di lettura in corso..." +msgstr "Comunica con il Kobo Reader" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 @@ -810,35 +707,199 @@ msgstr "Reperimento informazioni del dispositivo di lettura in corso..." #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 msgid "Getting list of books on device..." +msgstr "Recupero della lista dei libri sul dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Rimozione dei libri dal dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Cancellazione libri dalla lista metadati del dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Aggiunta dei libri alla lista metadati del dispositivo..." + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 +msgid "Communicate with the Palm Pre" +msgstr "Comunica con il Palm Pre" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:35 +msgid "Communicate with the Booq Avant" +msgstr "Comunica con il Booq Avant" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Comunica con il Sweex MM300" + +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 +msgid "Communicate with the Nokia 770 internet tablet." +msgstr "Comunica con il Nokia 770 Internet Tablet." + +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:40 +msgid "Communicate with the Nokia 810 internet tablet." +msgstr "Comunica con il Nokia 810 internet Tablet." + +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "Comunica con il Nokia E52" + +#: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 +msgid "The Nook" +msgstr "Il lettore Nook" + +#: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:21 +msgid "Communicate with the Nook eBook reader." +msgstr "Comunica con il lettore Nook." + +#: /home/kovid/work/calibre/src/calibre/devices/nuut2/driver.py:17 +msgid "Communicate with the Nuut2 eBook reader." +msgstr "Comunica con il lettore Nuut2." + +#: /home/kovid/work/calibre/src/calibre/devices/prs500/driver.py:89 +msgid "Communicate with the Sony PRS-500 eBook reader." +msgstr "Comunica con il lettore Sony PRS-500." + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:22 +msgid "Communicate with all the Sony eBook readers." +msgstr "Comunica con tutti i lettori Sony." + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +msgid "" +"Comma separated list of metadata fields to turn into collections on the " +"device. Possibilities include: " msgstr "" -"Reperimento della lista dei libri sul dispositivo di lettura in corso..." +"Lista di metadati separati da virgole da convertire in collezioni sul " +"dispositivo. Le possibilità sono: " + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 +msgid "Unnamed" +msgstr "Senza nome" + +#: /home/kovid/work/calibre/src/calibre/devices/sne/driver.py:17 +msgid "Communicate with the Samsung SNE eBook reader." +msgstr "Comunica con il lettore Samsung SNE." + +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:11 +msgid "Communicate with the Teclast K3 reader." +msgstr "Comunica con il lettore Teclast K3." + +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:37 +msgid "Communicate with the Newsmy reader." +msgstr "Comunica con il lettore Newsmy." + +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:49 +msgid "Communicate with the iPapyrus reader." +msgstr "Comunica con il lettore iPapyrus." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 +msgid "Unable to detect the %s disk drive. Try rebooting." +msgstr "Impossibile individuare il disco %s. Provare a riavviare." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 +msgid "Unable to detect the %s mount point. Try rebooting." +msgstr "" +"Impossibile individuare il %s mount Point. Provo ad effettuare un reboot" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 +msgid "Unable to detect the %s disk drive." +msgstr "Impossibile rilevare il disco %s." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 +msgid "Could not find mount helper: %s." +msgstr "Non é stato possibile trovare l'assistente di installazione: %s" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 +msgid "" +"Unable to detect the %s disk drive. Your kernel is probably exporting a " +"deprecated version of SYSFS." +msgstr "" +"mpossibile rilevare il disco %s. Il kernel in uso sta probabilmente " +"esportando una versione obsoleta di SYSFS." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 +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:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 +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:744 +msgid "Selected slot: %s is not supported." +msgstr "Lo slot selezionato: %s non è supportato." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 +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:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 +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/deviceconfig.py:12 +msgid "Configure Device" +msgstr "Configura dispositivo" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "Impostazioni per il driver del dispositivo" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "Lista ordinata dei formati che il dispositivo può accettare." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +msgid "Place files in sub directories if the device supports them" +msgstr "Metti i file in sotto cartelle se il dispositivo le supporta" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 +msgid "Read metadata from files on device" +msgstr "Legge i metadati dai file sul dispositivo" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 +msgid "Use author sort instead of author" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 +msgid "Template to control how books are saved" +msgstr "Modello per controllare come i libri vengono salvati" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 +msgid "Extra customization" +msgstr "Ulteriori personalizzazioni" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:37 +msgid "Communicate with an eBook reader." +msgstr "Comunicare con un lettore di eBook." + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:53 +msgid "Get device information..." +msgstr "Recupero informazioni del dispositivo..." #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." -msgstr "Trasferimento dei libri nel dispositivo di lettura in corso..." +msgstr "Trasferimento dei libri nel dispositivo..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "" -"Aggiunta libri alla lista metadata nel dispositivo di lettura in corso..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "Rimozione dei libri dal dispositivo di lettura in corso..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "" -"Cancellazione libri dalla lista metadata nel dispositivo di lettura in " -"corso..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." -msgstr "Invio dei metadata al dispositivo di lettura in corso..." +msgstr "Invio dei metadati al dispositivo..." #: /home/kovid/work/calibre/src/calibre/ebooks/chm/reader.py:41 msgid "%prog [options] mybook.chm" @@ -952,8 +1013,8 @@ msgid "" "creating your comics in EPUB format." msgstr "" "Numero dei colori per la conversione delle immagini in scala di grigi. " -"Default: %default. Valori inferiori a 256 potrebbero generare testo sfuocato " -"sul dispositivo di lettura in caso di conversione di fumetti in formato EPUB." +"Predefinito: %default. Valori inferiori a 256 potrebbero generare testo " +"sfocato sul dispositivo in caso di fumetti in formato EPUB." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:283 msgid "" @@ -1024,9 +1085,9 @@ msgid "" "experiment to see which format gives you optimal size and look on your " "device." msgstr "" -"Formato in cui sono convertite le immagini nell'ebook generato. E' possibile " -"sperimentare vari formati per trovare la dimesione e l'aspetto ottimale per " -"il dispositivo di lettura in uso." +"Formato in cui sono convertite le immagini nell'ebook generato. È possibile " +"sperimentare vari formati per trovare la dimensione e l'aspetto ottimale per " +"il dispositivo in uso." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:313 msgid "Apply no processing to the image" @@ -1119,8 +1180,8 @@ msgid "" "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -"Gestisce la generazione automatica dell'Indice. Per default, se il file " -"sorgente ha un Indice, questo sarà preferito a quello generato " +"Gestisce la generazione automatica dell'indice. Per default, se il file " +"sorgente ha un indice, questo sarà preferito a quello generato " "automaticamente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:155 @@ -1142,7 +1203,7 @@ msgstr "Output salvato in" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:95 msgid "Level of verbosity. Specify multiple times for greater verbosity." msgstr "" -"Livello di dettagli dell'output. Specificare piu' istanze per maggiori " +"Livello di dettagli dell'output. Specificare piu' volte per maggiori " "dettagli." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:102 @@ -1151,9 +1212,9 @@ msgid "" "specified directory. Useful if you are unsure at which stage of the " "conversion process a bug is occurring." msgstr "" -"Salva l'output dal differente stadio di conversione raggiunto nella " -"directory specificata. Utile se non si e' sicuri in quale stadio del " -"processo di conversione appare il bug" +"Salva l'output dei differenti stadi di conversione raggiunti nella directory " +"specificata. Utile se non si conosce in quale stadio del processo di " +"conversione si verifica l'errore." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:111 msgid "" @@ -1176,9 +1237,9 @@ msgid "" msgstr "" "Specificare il profilo di output. Il profilo di output fornisce al sistema " "di conversione informazioni su come ottimizzare il documento creato per il " -"dispositivo di lettura specificato. In alcuni casi, un profilo di output e' " -"richiesto per produrre documenti leggibili da un determinato dispositivo. " -"per esempio EPUB su un lettore SONY. Le scelte sono:" +"dispositivo specificato. In alcuni casi, un profilo di output è richiesto " +"per produrre documenti leggibili da un determinato dispositivo. Per esempio " +"EPUB su un lettore SONY. Le opzioni sono:" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:133 msgid "" @@ -1187,11 +1248,11 @@ msgid "" "fonts in the output bigger and vice versa. By default, the base font size is " "chosen based on the output profile you chose." msgstr "" -"Dimensione base dei Font in pts. Tutte le dimensioni dei Font nel libro " -"prodotto saranno scalate in base a questa dimensione. Scegliendo una " -"dimensione maggiore si possono ottenere fonts piu' grandi nell'output e " -"viceversa. Per default, la dimensione base dei Font e' scelta in base al " -"profilo scelto" +"Dimensione base dei caratteri in punti. Tutte le dimensioni dei caratteri " +"nel libro prodotto saranno scalate in base a questa dimensione. Scegliendo " +"una dimensione maggiore si possono ottenere caratteri piu' grandi " +"nell'output e viceversa. Per default, la dimensione base dei caratteri è " +"scelta in base al profilo scelto." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:143 msgid "" @@ -1239,9 +1300,9 @@ msgid "" "of Contents at level one. If this is specified, it takes precedence over " "other forms of auto-detection." msgstr "" -"Espressione XPath che specifica tutti i tag che devono essere aggiunti al " -"sommario al primo livello. Se viene specificata, prende la precedenza sulle " -"altre forme di autorilevamento." +"Espressione XPath che specifica tutti i tag che devono essere aggiunti " +"all'indice al primo livello. Se viene specificata, prende la precedenza " +"sulle altre forme di autorilevamento." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:189 msgid "" @@ -1249,8 +1310,8 @@ msgid "" "of Contents at level two. Each entry is added under the previous level one " "entry." msgstr "" -"Espressione XPath che specifica tutti i tag che devono essere aggiunti al " -"sommario al secondo livello. Ogni elemento viene aggiunto sotto l'elemento " +"Espressione XPath che specifica tutti i tag che devono essere aggiunti " +"all'indice al secondo livello. Ogni elemento viene aggiunto sotto l'elemento " "di primo livello precedente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:197 @@ -1259,9 +1320,9 @@ msgid "" "of Contents at level three. Each entry is added under the previous level two " "entry." msgstr "" -"Espressione XPath che identifica tutte le etichette da aggiungere alla " -"tavola dei contenuti al terzo livello. Ogni istanza é aggiunta come il " -"livello due che la precede." +"Espressione XPath che specifica tutti i tag che devono essere aggiunti " +"all'indice al terzo livello. Ogni elemento viene aggiunto sotto l'elemento " +"di secondo livello precedente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:205 msgid "" @@ -1269,13 +1330,13 @@ msgid "" "preference to the auto-generated one. With this option, the auto-generated " "one is always used." msgstr "" -"Normalmente, se il file sorgente possiede già un Indice (TOC Table of " -"Contents), esso è usato di preferenza rispetto a quello auto-generato. Con " -"questa opzione, verrà sempre usato l'indice auto-generato." +"Normalmente, se il file sorgente possiede già un indice, esso è usato di " +"preferenza rispetto a quello auto-generato. Con questa opzione, verrà sempre " +"usato l'indice auto-generato." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:213 msgid "Don't add auto-detected chapters to the Table of Contents." -msgstr "Non aggiungere i capitoli rilevati automaticamente al sommario." +msgstr "Non aggiungere i capitoli rilevati automaticamente all'indice." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:220 msgid "" @@ -1283,7 +1344,7 @@ msgid "" "the Table of Contents. Default: %default" msgstr "" "Se viene rilevato un numero di capitoli inferiore a questo, i collegamenti " -"saranno aggiunti al sommario. Predefinito: %default" +"saranno aggiunti all'indice. Predefinito: %default" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:227 msgid "" @@ -1291,19 +1352,18 @@ msgid "" "is: %default. Links are only added to the TOC if less than the threshold " "number of chapters were detected." msgstr "" -"Massimo numero di links da inserire nell'Indice (TOC Table of Contents). " -"Impostare 0 per disabilitare. il default è %default. I links sono aggiunti " -"all'Indice soltanto se non è già stato raggiunto il numero di capitoli " -"impostati." +"Massimo numero di link da inserire nell'indice. Impostare a 0 per " +"disabilitarlo. Il default è %default. I link sono aggiunti all'indice " +"soltanto se non è già stato raggiunto il numero di capitoli impostati." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:235 msgid "" "Remove entries from the Table of Contents whose titles match the specified " "regular expression. Matching entries and all their children are removed." msgstr "" -"Rimuovi dall'Indice (TOC Table of Contents) le voci il cui titolo " -"corrisponde alla espressione specificata. Le voci che corrispondono saranno " -"rimosse insieme alle voci \"figlie\"." +"Rimuovi dall'indice le voci il cui titolo corrisponde alla espressione " +"specificata. Le voci che corrispondono saranno rimosse insieme alle voci " +"\"figlie\"." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:246 msgid "" @@ -1357,29 +1417,29 @@ msgstr "" msgid "" "Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -"Imposta il margine superiore in pts. Il default e' %default. Nota: 72 pts " -"equivalgono a 1 inch (circa (2,54 cm)" +"Imposta il margine superiore in punti. Il default è %default. Nota: 72 punti " +"equivalgono a 1 pollice (circa 2,54 cm)" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:290 msgid "" "Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -"Imposta il margine inferiore in pts. Il default e' %default. Nota: 72 pts " -"equivalgono a 1 inch (circa (2,54 cm)" +"Imposta il margine inferiore in punti. Il default è %default. Nota: 72 punti " +"equivalgono a 1 pollice (circa 2,54 cm)" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:295 msgid "" "Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -"Imposta il margine sinistro in pts. Il default e' %default. Nota: 72 pts " -"equivalgono a 1 inch (circa (2,54 cm)" +"Imposta il margine sinistro in punti. Il default è %default. Nota: 72 punti " +"equivalgono a 1 pollice (circa 2,54 cm)" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:300 msgid "" "Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" -"Imposta il margine destro in pts. Il default e' %default. Nota: 72 pts " -"equivalgono a 1 inch (circa (2,54 cm)" +"Imposta il margine destro in punti. Il default è %default. Nota: 72 punti " +"equivalgono a 1 pollice (circa 2,54 cm)" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:306 msgid "" @@ -1389,6 +1449,11 @@ msgid "" "\"original\" (the default) does not change justification in the source file. " "Note that only some output formats support justification." msgstr "" +"Cambia allineamento del testo. Impostato a \"sinistra\" il testo della " +"sorgente verrà covertito con un allineamento a sinistra. Impostato a " +"\"giustificato\" il testo verrà distribuito per larghezza della pagina. " +"Impostato a \"originale\" (predefinito) l'allineamento non verrà cambiato. " +"Notare che solo alcuni formati di output supportano il testo giustificato." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:316 msgid "" @@ -1396,9 +1461,9 @@ msgid "" "1.5em. Spacing removal will not work if the source file does not use " "paragraphs (

    or

    tags)." msgstr "" -"Rimuovi gli spazi fra i paragrafi. Specifica anche un incavo all'inizio dei " -"paragrafi di 1.5em. Rimuover gli spazi non avrá alcun effetto se il " -"documento sorgente non usa notazione per i paragrafi del tipo

    o

    ." +"Rimuovi gli spazi fra i paragrafi. Specifica anche un rientro all'inizio dei " +"paragrafi di 1.5em. Rimuovere gli spazi non funzionerá se il documento " +"sorgente non usa la notazione per i paragrafi del tipo

    o

    ." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:323 msgid "" @@ -1406,9 +1471,9 @@ msgid "" "paragraph indent, to ensure that paragraphs can be easily distinguished. " "This option controls the width of that indent." msgstr "" -"Quando Calibre rimuove la spaziatura tra i paragrafi, specifica " -"automaticamente un incavo di paragrafo, per assicurarsi che i paragrafi " -"siano ben distinti. questa opzione controlla l'ampiezza dell'incavo." +"Quando Calibre rimuove la spaziatura tra i paragrafi, inserisce " +"automaticamente un rientro di paragrafo, per assicurarsi che i paragrafi " +"siano ben distinti. Questa opzione controlla l'ampiezza del rientro." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 msgid "" @@ -1423,8 +1488,8 @@ msgid "" "Insert a blank line between paragraphs. Will not work if the source file " "does not use paragraphs (

    or

    tags)." msgstr "" -"Inserisce una linea vuota tra i paragrafi. Non funziona se il file sorgente " -"non usa paragrafi ( tag

    o

    )" +"Inserisce una linea vuota tra i paragrafi. Non funzionerà se il file " +"sorgente non usa i paragrafi ( tag

    o

    )" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:343 msgid "" @@ -1432,15 +1497,15 @@ msgid "" "the source file is a cover and you are specifying an external cover." msgstr "" "Rimuovi la prima immagine dall'ebook di input. Utile se la prima immagine " -"del file sorgente e' una copertina e si sta indicando una copertina esterna." +"del file sorgente è una copertina e si sta indicando una copertina esterna." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 msgid "" "Insert the book metadata at the start of the book. This is useful if your " "ebook reader does not support displaying/searching metadata directly." msgstr "" -"Inserisce i metadata del libro all'inizio. Utile se il dispositivo di " -"lettura non supporta direttamente la visualizzazione/ricerca di metadata." +"Inserisce i metadati del libro all'inizio. Utile se il dispositivo non " +"supporta la visualizzazione/ricerca di metadati direttamente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:359 msgid "" @@ -1448,17 +1513,17 @@ msgid "" "source file. This may make things worse, so use with care." msgstr "" "Cerca di individuare e correggere le interruzioni di linea forzate ed altri " -"problemi nel file sorgente. Usare con cautela perche' potrebbe peggiorare la " +"problemi nel file sorgente. Usare con cautela perché potrebbe peggiorare la " "situazione." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:367 msgid "Use a regular expression to try and remove the header." msgstr "" -"Utilizza una espressione regolare per provare a rimuovere la testata." +"Utilizza una espressione regolare per provare e rimuovere l'intestazione." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:374 msgid "The regular expression to use to remove the header." -msgstr "L'espressione regolare da usare per rimuovere la testata." +msgstr "L'espressione regolare da usare per rimuovere l'intestazione." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:380 msgid "Use a regular expression to try and remove the footer." @@ -1473,8 +1538,8 @@ msgid "" "Read metadata from the specified OPF file. Metadata read from this file will " "override any metadata in the source file." msgstr "" -"Legge i metadata dal file OPF specificato. I metadata letti da questo file " -"sovrascrivono qualunque altro metadata presente nel file sorgente." +"Legge i metadati dal file OPF specificato. I metadati letti da questo file " +"sovrascrivono qualunque altro metadato presente nel file sorgente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:401 msgid "" @@ -1502,6 +1567,12 @@ msgid "" "corresponding pair of normal characters. This option will preserve them " "instead." msgstr "" +"Mantieni i legami presenti nel documento di input. Un legame è una speciale " +"formattazione di una coppia di caratteri come ff, fi, fl eccetera. La " +"maggior parte del lettori non supportano i legami con i font predefiniti, " +"così questi non verranno letti correttamente. Calibre converte " +"automaticamente un legame nei corrispondenti due caratteri. Questa opzione " +"manterrà i legami nel documento generato." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:38 @@ -1516,11 +1587,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:437 msgid "The version of the title to be used for sorting. " -msgstr "la versione del titolo che sara' usata per l'ordinamento. " +msgstr "La versione del titolo da usare per l'ordinamento. " #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:441 msgid "String to be used when sorting by author. " -msgstr "Stinga che sara' usata quando si ordina per autore. " +msgstr "Stringa da usare nell'ordinamento per autore. " #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:445 msgid "Set the cover to the specified file or URL" @@ -1544,7 +1615,7 @@ msgstr "Imposta la serie alla quale l'ebook appartiene" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:461 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:62 msgid "Set the index of the book in this series." -msgstr "Imposta l'indice del libro in questa serie" +msgstr "Imposta l'indice analitico del libro in questa serie" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:465 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:64 @@ -1560,7 +1631,7 @@ msgstr "Imposta il codice ISBN del libro" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:68 msgid "Set the tags for the book. Should be a comma separated list." msgstr "" -"Imposta i tags per il libro. Deve eessere una lista separata da virgole." +"Imposta i tag per il libro. Deve essere una lista separata da virgole." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:477 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:70 @@ -1588,7 +1659,7 @@ msgstr "Impossibile trovare un libro dentro l'archivio" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:647 msgid "Values of series index and rating must be numbers. Ignoring" msgstr "" -"I valori di index della serie e il rating devomo essere numerici. Ignorato" +"I valori della serie e la valutazione devono essere numerici. Ignorato" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:654 msgid "Failed to parse date/time" @@ -1596,7 +1667,7 @@ msgstr "Errore nell'interpretare la data/orario" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:809 msgid "Converting input to HTML..." -msgstr "Conversione dell'inputi in HTML in corso..." +msgstr "Conversione dell'input in HTML..." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:836 msgid "Running transforms on ebook..." @@ -1637,9 +1708,9 @@ msgid "" "most EPUB readers cannot handle large file sizes. The default of %defaultKB " "is the size required for Adobe Digital Editions." msgstr "" -"Suddivide tutti i file HTML piu' grandi di questa dimensione (in KB). Cio' " -"e' necessario perche' la maggioranza dei lettori EPUB non gestisce file di " -"grandi dimensioni. Il default di %defaultKB e' la dimensione richiesta per " +"Suddivide tutti i file HTML più grandi di questa dimensione (in KB). È " +"necessario perché la maggioranza dei lettori EPUB non gestisce file di " +"grandi dimensioni. Il default di %defaultKB è la dimensione richiesta per " "Adobe Digital Editions." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:80 @@ -1655,10 +1726,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" +"Non utilizzare SVG per la copertina del libro. Usare questa opzione se " +"l'EPUB verrà usato su un dispositivo che non supporta SVG, come l'iPhone o " +"il JetBook Lite. Senza questa opzione, alcuni dispositivi visualizzeranno " +"cme copertina una pagina bianca." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" @@ -1668,20 +1743,25 @@ msgid "" "and bottom of the image, but the image will never be distorted. Without this " "option the image may be slightly distorted, but there will be no borders." msgstr "" +"Quando viene usata una copertina SVG, questa opzione ridimensiona la " +"copertina per coprire l'area dello schermo, ma preservando le proporzioni. " +"Questo significa che potrebbero esserci dei bordi bianchi intorno alla " +"copertina, ma questa non verrà distorta. Senza questa opzione l'immagine " +"potrebbe essere sproporzionata anche se non avrà bordi bianchi." #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:169 msgid "Start" -msgstr "" +msgstr "Avvio" #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:144 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:102 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 msgid "Table of Contents:" -msgstr "Indice (in inglese):" +msgstr "Indice:" #: /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 "Non inserire un Indice (TOC Table of Contents) all'inizio dell'Ebook" +msgstr "Non inserire un indice all'inizio del libro." #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:32 @@ -1689,9 +1769,9 @@ msgstr "Non inserire un Indice (TOC Table of Contents) all'inizio dell'Ebook" #: /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 "Inserire un Indice (TOC Table of Contents) all'inizio dell'Ebook" +msgstr "Inserire un indice all'inizio del libro." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1699,7 +1779,7 @@ msgstr "" "Seguire i collegamenti nelle pagine HTML per ampiezza. Normalmente sono " "seguiti prima in profonditá" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1710,7 +1790,7 @@ msgstr "" "nessun collegamento nel documento HTML é seguito. Il valore predefinito é " "%default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1723,7 +1803,7 @@ msgstr "" "misuso potrebbe causare consequenze indesidrate nella sequenza di " "conversione." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1870,9 +1950,9 @@ msgid "Path to output file" msgstr "Percorso del file in uscita" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" -msgstr "Processamento dettagliato" +msgstr "Elaborazione dettagliata" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:292 msgid "Convert LRS to LRS, useful for debugging." @@ -1929,8 +2009,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 "" -"Aggiunge spazio extra sotto l'intestazione. Il valore di default e' %default " -"pt." +"Aggiunge spazio extra sotto l'intestazione. Il valore di default è %default " +"punti." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:107 msgid "" @@ -1972,84 +2052,86 @@ msgstr "La famiglia di caratteri a spaziatura fissa da includere" msgid "Comic" msgstr "Comic" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:345 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:848 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Titolo" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:373 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:350 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:849 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autore(i)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Editore" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:375 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Produttore" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:376 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1034 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:104 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Commenti" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1030 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:103 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Tag" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:386 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1039 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:102 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Serie" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:387 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Lingua" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Timestamp" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Pubblicato" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Privilegi" @@ -2057,7 +2139,7 @@ msgstr "Privilegi" msgid "EDITORIAL REVIEW" msgstr "Rassegna Editoriale" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41 msgid "" "Extract common e-book formats from archives (zip/rar) files. Also try to " "autodetect if they are actually cbz/cbr files." @@ -2107,18 +2189,16 @@ msgid "" "The version of the title to be used for sorting. If unspecified, and the " "title is specified, it will be auto-generated from the title." msgstr "" -"La versione del titolo che sara' usata nell'ordinamento. Se non viene " -"specificata e il titolo e' specificato, la versione verra' autogenerata dal " -"titolo." +"La versione del titolo da usare per l'ordinamento. Se non specificata, la " +"versione verrà generata automaticamente dal titolo." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:48 msgid "" "String to be used when sorting by author. If unspecified, and the author(s) " "are specified, it will be auto-generated from the author(s)." msgstr "" -"La stringa che sara' usata nell'ordinamento per autore. Se non viene " -"specificata e l'autore e' specificato, la versione verra' autogenerata dal " -"nome dell'autore." +"La stringa che verrà usata nell'ordinamento per autore. Se non specificata, " +"essa verrà generata automaticamente dal nome dell'autore." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:52 msgid "Set the cover to the specified file." @@ -2181,35 +2261,43 @@ msgstr "Copertina salvata in" msgid "No cover found" msgstr "Nessuna copertina trovata" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "Scarica cover" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "Scarica i metadati da Douban.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Scarica i metadati" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "Valutazioni" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 -msgid "tags" -msgstr "etichette" - #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +msgid "tags" +msgstr "tag" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "Descrizione/Rassegne" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" -msgstr "scaricamento di %s da %s" +msgstr "Scarica %s da %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Scarica i metadati da Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Scarica i metadati da isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2217,11 +2305,15 @@ msgstr "" "Per utilizzare isbndb.com é necessario registrarsi per un %sfree account%s " "utilizzando il vostro codice di accesso indicato in basso." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Scaricare i metadati sociali da amazon.com." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" +msgstr "Scarica informazioni su serie/tag/valutazione da librarything.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2246,27 +2338,27 @@ msgstr "" "(gratis).\n" "\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." -msgstr "Il codice ISBN del libro di cui si vogliono i metadati" +msgstr "Il codice ISBN del libro di cui si vogliono i metadati." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "L'autore del libro da cercare" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "Il titolo del libro da cercare" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "L'editore del libro da cercare" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." -msgstr "Tempo di attesa per LibraryThing.com terminato. Riprovare più tardi." +msgstr "Connessione con LibraryThing.com scaduta. Riprovare più tardi." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2274,29 +2366,30 @@ msgstr "" "Impossibile scaricare la copertina perché il server è sovraccarico. " "Ritentare più tardi" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " non trovato" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "Errore server LibraryThing.com. Riprovare più tardi." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" "\n" -"%prog [opzioni] ISBN\n" +"%prog [options] ISBN\n" "\n" -"Scarica un'immagine di copertina per il libro identificato dall'ISBN da " -"LibraryThing.com\n" +"Recupera un'immagine di copertina/metadato sociale per il libro identificato " +"con da ISBN da LibraryThing.com\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1220 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Copertina" @@ -2314,13 +2407,13 @@ msgid "" "Don't add Table of Contents to end of book. Useful if the book has its own " "table of contents." msgstr "" -"Non aggiungere un indice dei contenuti alla fine del libro. Opzione utile se " -"il libro contiene gia' il suo indice." +"Non aggiungere un indice alla fine del libro. Opzione utile se il libro " +"contiene già il suo indice." #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:33 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:56 msgid "Title for any generated in-line table of contents." -msgstr "Titolo per tutti gli indici di contenuto in-line." +msgstr "Titolo per ogni indice in-line generato." #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:37 msgid "Disable compression of the file contents." @@ -2328,7 +2421,7 @@ msgstr "Disabilita la compressione dei file di contenuto" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:40 msgid "Tag marking book to be filed with Personal Docs" -msgstr "Il Tag marca il libro come Documento Personale" +msgstr "Il tag marca il libro come Documento Personale" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:108 msgid "All articles" @@ -2336,72 +2429,72 @@ msgstr "Tutti gli articoli" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:258 msgid "This is an Amazon Topaz book. It cannot be processed." -msgstr "" +msgstr "Questo è un libro Amazon Topaz. Non può essere elaborato." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Pagina iniziale" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" -msgstr "Sommario" - -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 -msgid "Index" msgstr "Indice" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 +msgid "Index" +msgstr "Indice analitico" + +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Glossario" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Ringraziamenti" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliografia" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Colophon" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Diritti d'autore" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Dedica" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epigrafe" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Premessa" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Indice delle figure" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Indice delle tabelle" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Note" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Prefazione" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Corpo del testo" @@ -2455,8 +2548,8 @@ msgid "" "it will assume that every line represents a paragraph instead." msgstr "" "Normalmente Calibre considera linee vuote come segnale per terminare i " -"paragrafi. Con questa opzione si assumera' che tutte le linee saranno " -"trattate come paragrafi." +"paragrafi. Con questa opzione si assumerà che ogni linea rappresenti un " +"paragrafo." #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:26 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:27 @@ -2467,15 +2560,14 @@ msgid "" "spaces) represents a paragraph. Paragraphs end when the next line that " "starts with an indent is reached." msgstr "" -"Normalmente Calibre considera linee vuote come segnale per terminare i " -"paragrafi. Con questa opzione si assumera' che tutte le linee che " -"incominciano con indentazione (uso del TAB o piu' di 2 spazi) siano " -"considerati paragrafi. La fine dei pragrafi e' individuata quando la linea " -"successiva trova un'indentazione." +"Normalmente Calibre considera le linee vuote come fine dei paragrafi. Con " +"questa opzione si assumerà che tutte le linee che incominciano con rientro " +"(uso del TAB o più di 2 spazi) siano considerate paragrafi. I paragrafi " +"finiscono alla successivo rientro." #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:23 msgid "Format to use inside the pdb container. Choices are:" -msgstr "Formattazione da usare con il contentenuto pdb. Le opzioni sono:" +msgstr "Formattazione da usare nel pdb. Le opzioni sono:" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:27 msgid "" @@ -2488,7 +2580,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/input.py:24 msgid "Do not extract images from the document" -msgstr "Non includere le immagini dal documento" +msgstr "Non estrarre le immagini dal documento" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/input.py:26 msgid "" @@ -2502,7 +2594,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/input.py:30 msgid "Use the new PDF conversion engine." -msgstr "Usa il nuovo motore di conversione PDF" +msgstr "Usa il nuovo motore di conversione PDF." #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/cli.py:31 msgid "" @@ -2633,6 +2725,8 @@ msgstr "" "Ottieni i dettagli del PDF.\n" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author" msgstr "Autore" @@ -2761,7 +2855,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:45 msgid "The orientation of the page. Default is portrait. Choices are %s" msgstr "" -"L'orientazione della pagina. Il valore predefinito é ritratto. Le opzioni " +"L'orientamento della pagina. Il valore predefinito é ritratto. Le opzioni " "sono %s" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:49 @@ -2769,6 +2863,8 @@ msgid "" "Preserve the aspect ratio of the cover, instead of stretching it to fill the " "ull first page of the generated pdf." msgstr "" +"Conserva le proporzioni della copertina, invece di espanderla per ricoprire " +"la prima pagina del pdf generato." #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/pdftohtml.py:55 msgid "Could not find pdftohtml, check it is in your PATH" @@ -2813,6 +2909,8 @@ msgid "" "Normally extra spaces are condensed into a single space. With this option " "all spaces will be displayed." msgstr "" +"Normalmente gli spazi multipli vengono trasformati in uno unico. Con questa " +"opzioni vergono visualizzati tutti gli spazi." #: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:36 msgid "" @@ -2824,7 +2922,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:39 msgid "Do not insert a Table of Contents into the output text." -msgstr "Non inserire la tabella dei contenuti nel testo di output." +msgstr "Non inserire un indice nel testo di output." #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:24 msgid "" @@ -2899,8 +2997,8 @@ msgid "Use Roman numerals for series number" msgstr "Usa numeri romani per i numeri delle serie" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:47 -msgid "Sort tags list by popularity" -msgstr "Ordina la lista dei tag per popolarità" +msgid "Sort tags list by name, popularity, or rating" +msgstr "Ordina i tag per nome, popolarità o valutazione" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 msgid "Number of covers to show in the cover browsing mode" @@ -2938,13 +3036,12 @@ msgstr "Mostra un'icona nel vassoio di sistema" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 msgid "Upload downloaded news to device" -msgstr "Invia le notizie scaricate al dispositivo di lettura" +msgstr "Invia le notizie scaricate al dispositivo" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 msgid "Delete books from library after uploading to device" msgstr "" -"Elimina i libri dalla biblioteca dopo averle caricate sul dispositivo di " -"lettura" +"Elimina i libri dalla biblioteca dopo averli caricati sul dispositivo" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 msgid "" @@ -2952,7 +3049,7 @@ msgid "" "window" msgstr "" "Fai vedere la vetrina delle copertine in una finestra separata invece della " -"finestra prinicpale di Calibre." +"finestra principale di Calibre." #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 msgid "Disable notifications from the system tray icon" @@ -2961,8 +3058,8 @@ msgstr "Disabilita messaggi dall'icona nella barra di sistema" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71 msgid "Default action to perform when send to device button is clicked" msgstr "" -"Azione predefinita da attuare quando si seleziona il tasto di invio al " -"dispositivo di lettura." +"Azione predefinita da eseguire quando viene cliccato il pulsante di invio al " +"dispositivo." #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 msgid "Maximum number of waiting worker processes" @@ -2970,11 +3067,11 @@ msgstr "Limite masimo di processi in attesa" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95 msgid "Download social metadata (tags/rating/etc.)" -msgstr "Scaricare metadati sociali (categorie/valutazioni/etc.)" +msgstr "Scarica metadati sociali (tag/valutazioni/etc.)" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97 msgid "Overwrite author and title with new metadata" -msgstr "Usa i nuovi meta-dati per cambiare l'autore e il titolo" +msgstr "Usa i nuovi metadati per cambiare l'autore e il titolo" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99 msgid "Limit max simultaneous jobs to number of CPUs" @@ -2982,68 +3079,475 @@ msgstr "Limita il massimo numero di job simultanei al numero delle CPU." #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101 msgid "tag browser categories not to display" -msgstr "" +msgstr "categorie del browser di tag da non visualizzare" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103 msgid "The layout of the user interface" -msgstr "" +msgstr "L'aspetto dell'interfaccia grafica" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105 +msgid "Show the average rating per item indication in the tag browser" +msgstr "Visualizza la valutazione media per elemento nel browser dei tag" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "Disattiva animazioni interfaccia" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Copiato" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:185 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Copia" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:185 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Copia negli appunti" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Seleziona documenti" +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 +msgid "Use library only" +msgstr "Usare solo la biblioteca" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 +msgid "User annotations generated from main library only" +msgstr "Annotazioni utente generate solo dalla biblioteca principale" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 +msgid "No books selected" +msgstr "Nessun libro selezionato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 +msgid "No books selected to fetch annotations from" +msgstr "Nessun libro selezionato da cui prendere annotazioni" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 +msgid "Merging user annotations into database" +msgstr "Fondi le annotazioni utente nel database" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 +msgid "%s
    Last Page Read: %d (%d%%)" +msgstr "%s
    Ultima Pagina Letta: %d (%d%%)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 +msgid "%s
    Last Page Read: Location %d (%d%%)" +msgstr "%s
    Ultima Pagina Letta: Posizione %d (%d%%)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 +msgid "Location %d • %s
    %s
    " +msgstr "Posizione %d • %s
    %s
    " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 +msgid "Page %d • %s
    " +msgstr "Pagina %d • %s
    " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 +msgid "Location %d • %s
    " +msgstr "Posizione %d • %s
    " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 +msgid "How many empty books?" +msgstr "Quanti libri vuoti?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 +msgid "How many empty books should be added?" +msgstr "quanti libri vuoti si desidera aggiungere?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 +msgid "Uploading books to device." +msgstr "Invio dei libri al dispositivo." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 +msgid "Books" +msgstr "Libri" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +msgid "EPUB Books" +msgstr "Libri EPUB" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +msgid "LRF Books" +msgstr "Libri LRF" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +msgid "HTML Books" +msgstr "Libri HTML" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +msgid "LIT Books" +msgstr "Libri LIT" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +msgid "MOBI Books" +msgstr "Libri MOBI" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +msgid "Topaz books" +msgstr "Libri Topaz" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +msgid "Text books" +msgstr "Libri TXT" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 +msgid "PDF Books" +msgstr "Libri PDF" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 +msgid "Comics" +msgstr "Fumetti" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 +msgid "Archives" +msgstr "Archivi" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 +msgid "Supported books" +msgstr "Libri supportati" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 +msgid "Merged some books" +msgstr "Uniti alcuni libri" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 +msgid "" +"Some duplicates were found and merged into the following existing books:" +msgstr "Alcune copie sono state trovate e unite con i seguenti libri:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 +msgid "Failed to read metadata" +msgstr "Non é stato possibile leggere i metadati" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 +msgid "Failed to read metadata from the following" +msgstr "Non é stato possibile leggere i metadati dai seguenti" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "Add to library" +msgstr "Aggiungi alla biblioteca" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 +msgid "No book selected" +msgstr "Nessun libro selezionato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "No book files found" +msgstr "Nessun libro trovato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 +msgid "Cannot delete" +msgstr "Non si può cancellare" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 +msgid "Choose formats to be deleted" +msgstr "Seleziona i formati da cancellare" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 +msgid "Choose formats not to be deleted" +msgstr "Seleziona i formati da non cancellare" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 +msgid "Cannot delete books" +msgstr "Impossibile eliminare i libri" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 +msgid "No device is connected" +msgstr "Nessun dispositivo collegato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 +msgid "Main memory" +msgstr "Memoria principale" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 +msgid "Storage Card A" +msgstr "Scheda di memoria A" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 +msgid "Storage Card B" +msgstr "Scheda di memoria B" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 +msgid "No books to delete" +msgstr "Nessun libro da eliminare" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 +msgid "None of the selected books are on the device" +msgstr "Nessuno dei libri selezionati è sul device" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 +msgid "Deleting books from device." +msgstr "Cancellazione dei libri dal dispositivo." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 +msgid "" +"The selected books will be permanently deleted and the files removed " +"from your computer. Are you sure?" +msgstr "" +"I libri selezionati saranno cancellati permanentemente e i documenti " +"rimossi dal computer. Siete sicuri?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 +msgid "" +"The selected books will be permanently deleted from your device. Are " +"you sure?" +msgstr "" +"I libri selezionati verranno cancellati definitivamente

    dal " +"dispositivo. Confermare?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 +msgid "Cannot download metadata" +msgstr "Impossibile scaricare i metadati" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 +msgid "social metadata" +msgstr "metadati sociali" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "covers" +msgstr "copertine" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "metadata" +msgstr "metadati" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 +msgid "Downloading %s for %d book(s)" +msgstr "Scaricamento %s per %d libro" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 +msgid "Failed to download some metadata" +msgstr "Impossibile scaricare alcuni metadati" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 +msgid "Failed to download metadata for the following:" +msgstr "Impossibile a scaricare i metadati per i seguenti:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 +msgid "Failed to download metadata:" +msgstr "Lo scaricamento dei metadati è fallito:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 +#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 +msgid "Error" +msgstr "Errore" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 +msgid "Cannot edit metadata" +msgstr "Impossibile modificare i metadati" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 +msgid "Cannot merge books" +msgstr "Impossibile unire i libri" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 +msgid "At least two books must be selected for merging" +msgstr "Devono essere selezionati almeno due libri per essere uniti" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 +msgid "" +"All book formats and metadata from the selected books will be added to the " +"first selected book.

    The second and subsequently selected " +"books will not be deleted or changed.

    Please confirm you want to " +"proceed." +msgstr "" +"Tutti i formati e metadati dei libri selezionati verranno aggiunti al " +"primo libro selezionato.

    Gli altri libri non verranno " +"cancellati o modificati.

    Procedere con l'operazione?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 +msgid "" +"All book formats and metadata from the selected books will be merged into " +"the first selected book.

    After merger the second and " +"subsequently selected books will be deleted.

    All book formats " +"of the first selected book will be kept and any duplicate formats in the " +"second and subsequently selected books will be permanently deleted " +"from your computer.

    Are you sure you want to proceed?" +msgstr "" +"Tutti i formati e metadati dei libri selezionati verranno uniti nel primo " +"libro selezionato.

    Dopo l'unione gli altri libri verranno " +"cancellati.

    Tutti i formati del primo libro selezionato verranno " +"conservati e ogni formato duplicato degli altri libri selezionati " +"verràpermantentemente cancellato dal computer.

    Procedere " +"l'operazione?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 +msgid "" +"You are about to merge more than 5 books. Are you sure you want to " +"proceed?" +msgstr "Verranno uniti più di 5 libri. Confermare l'unione?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 +msgid "Cannot save to disk" +msgstr "Impossibile salvare sul disco" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 +msgid "Choose destination directory" +msgstr "Scegliere la cartella di destinazione" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 +msgid "Error while saving" +msgstr "Errore durante il salvataggio" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 +msgid "There was an error while saving." +msgstr "Si è verificato un errore durante il salvataggio." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 +msgid "Could not save some books" +msgstr "Non é stato possibile salvare tutti i libri" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 +msgid "Click the show details button to see which ones." +msgstr "Fare clic sul pulsante dettagli per vedere quali." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +msgid "No books selected to generate catalog for" +msgstr "Nessun libro selezionato per la generazione del catalogo" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 +msgid "Generating %s catalog..." +msgstr "Generando %s catalogo..." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 +msgid "No books found" +msgstr "Nessun libro trovato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 +msgid "" +"No books to catalog\n" +"Check exclude tags" +msgstr "" +"Nessun libro da catalogare\n" +"Controlla i tag esclusi" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 +msgid "Catalog generated." +msgstr "Catalogo generato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 +msgid "Export Catalog Directory" +msgstr "Esporta il catalogo" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 +msgid "Select destination for %s.%s" +msgstr "Selezionare una destinazione per %s.%s" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 +msgid "Fetching news from " +msgstr "Recupero notizie da " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 +msgid " fetched." +msgstr " preso." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 +msgid "Cannot convert" +msgstr "Impossibile convertire" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 +msgid "Starting conversion of %d book(s)" +msgstr "Conversione di %d libri avviata" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 +msgid "Cannot view" +msgstr "Impossibile leggere" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 +msgid "Choose the format to view" +msgstr "Scegliere il formato da leggere" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 +msgid "Multiple Books Selected" +msgstr "Piú di un libro selezionato" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 +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 "" +"State tentando di aprire %d libri. Aprire molti libri allo stesso tempo puó " +"essere molto lento e causare effetti indesiderati nella responsivitá del " +"vostro computer. Una volta cominciato questa azione non puó essere fermata " +"finché il processo é completato. Siete sicuri di voler continuare?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 +msgid "Cannot open folder" +msgstr "Impossibile aprire la cartella" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 +msgid "%s has no available formats." +msgstr "%s non ha formati disponibili" + #: /home/kovid/work/calibre/src/calibre/gui2/add.py:54 msgid "Searching in" msgstr "Cercando in" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Sto aggiungendo...." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Cercando in tutte le sotto cartelle" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Errore di percorso" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." -msgstr "Non é possibile elaborare la cartella indicata." +msgstr "Impossibile elaborare la cartella indicata." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Nessun libro." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1432 -msgid "No books found" -msgstr "Nessun libro trovato" - -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Aggiunto" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "L' aggiunta é fallita" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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." @@ -3052,11 +3556,11 @@ msgstr "" "di far ripartire Calibre e aggiungere i libri in incrementi piu' piccoli, " "fino a quando si indentifica il libro che causa il problema." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Scoperti duplicati!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -3064,46 +3568,46 @@ msgstr "" "Libri con lo stesso titolo sono giá presenti nella lista. Volete aggiungere " "in ogni caso?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "Aggiunta dei duplicati..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Salvataggio..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Salvato" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:57 msgid "Searching for sub-folders" -msgstr "" +msgstr "Ricerca di sottocartelle" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:62 msgid "Searching for books" -msgstr "" +msgstr "Ricerca di libri" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:74 msgid "Looking for duplicates based on file hash" -msgstr "" +msgstr "Cerca i duplicati in base all'hash" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:109 #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:65 msgid "Choose root folder" -msgstr "" +msgstr "Selezionare la cartella principale" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:137 msgid "Invalid root folder" -msgstr "" +msgstr "Cartella principale non valida" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:138 msgid "is not a valid root folder" -msgstr "" +msgstr "non è una cartella principale valida" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:148 msgid "Add books to calibre" -msgstr "" +msgstr "Aggiungi libri a calibre" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:21 #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:57 @@ -3116,19 +3620,19 @@ msgstr "Pagina dell'assistente" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:22 msgid "Scanning root folder for books" -msgstr "" +msgstr "Ricerca di libri nella cartella principale" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:23 msgid "This may take a few minutes" -msgstr "" +msgstr "Questo richiederà alcuni minuti" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:58 msgid "Choose the location to add books from" -msgstr "" +msgstr "Selezionare la posizione dalla quale aggiungere i libri" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:59 msgid "Select a folder on your hard disk" -msgstr "" +msgstr "Selezionare una cartella sul disco" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:60 msgid "" @@ -3141,16 +3645,26 @@ msgid "" "

    Make sure that the folder you chose for your calibre library is " "not under the root folder you choose.

    " msgstr "" +"

    calibre può cercare automaticamente i libri sul computer. Questi libri " +"verranno copiati nella biblioteca di calibre. Questa procedura " +"aiuterà a personalizzare il processo di ricerca e importazione della " +"collezione di libri esistenti.

    \n" +"

    Selezionare una cartella principale. I libri verranno cercati sono in " +"questa cartella e nelle sue sottocartelle.

    \n" +"

    Assicurarsi che la cartella selezionata per la biblioteca di calibre " +"non sia all'interno della cartella principale selezionata.

    " #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:63 msgid "&Root folder:" -msgstr "" +msgstr "&Cartella principale" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:64 msgid "" "This folder and its sub-folders will be scanned for books to import into " "calibre's library" msgstr "" +"In questa cartella e le sue sottocartelle saranno cercati i libri da " +"importare nella biblioteca di calibre" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:52 @@ -3158,25 +3672,25 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:125 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3187,8 +3701,8 @@ msgstr "" #: /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 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:74 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:76 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:77 #: /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 @@ -3206,18 +3720,74 @@ msgstr "..." #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:67 msgid "Handle multiple files per book" -msgstr "" +msgstr "Gestisce più file per libro" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:68 msgid "" "&One book per folder, assumes every ebook file in a folder is the same book " "in a different format" msgstr "" +"&Un libro per cartella, si presume che ogni file in una cartella sia lo " +"stesso libro ma con un diverso formato" #: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:69 msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" +"&Più libri per cartella, si presume che ogni file sia un libro diverso" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 +msgid "Path" +msgstr "Percorso" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 +msgid "Formats" +msgstr "Formati" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 +msgid "Collections" +msgstr "Raccolte" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 +msgid "Click to open" +msgstr "Fare clic per aprire" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 +msgid "None" +msgstr "Nessuno" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 +msgid "Click to open Book Details window" +msgstr "Fare clic per visualizzare i dettagli del libro" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml.py:16 msgid "CSV/XML Options" @@ -3264,7 +3834,7 @@ msgstr "output" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3274,11 +3844,11 @@ msgstr "output" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/save_template_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106 @@ -3296,26 +3866,26 @@ msgstr "Opzioni per il libro elettronico" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1362 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1380 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Catalogo" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:69 msgid "'Don't include this book' tag:" -msgstr "Etichetta per 'Non usare questo libro':" +msgstr "Tag per 'Non usare questo libro':" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:70 msgid "'Mark this book as read' tag:" -msgstr "Etichetta per 'Marcare questo libro come letto':" +msgstr "Tag per 'Marca questo libro come letto':" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:71 msgid "Additional note tag prefix:" -msgstr "Etichetta per note aggiuntive" +msgstr "Tag per note aggiuntive:" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:72 msgid "Regex pattern describing tags to exclude as genres:" -msgstr "Stringa Regex per definire etichette che escludono generi:" +msgstr "Espressione regolare per definire i tag da escludere come generi:" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:73 msgid "" @@ -3325,11 +3895,11 @@ msgid "" "- A regex pattern of a single dot excludes all genre tags, generating no " "Genre Section" msgstr "" -"Consigli Regex:\n" -"- Il valore di default regex - \\[[\\w ]*\\] - esclude i tag di genere dal " -"modulo [tag], ad esempio, [Amazon Freebie]\n" -"- Un modello regex con un singolo punto esclude tutte le etichette di " -"genere, non generando quindi alcuna Sezione Genere" +"Consigli espressioni regolari:\n" +"- L'espressione predefinita - \\[[\\w ]*\\] - esclude i tag di genere del " +"tipo [tag], ad esempio, [Amazon Freebie]\n" +"- Un espressione con un singolo punto esclude tutti i tag di genere, " +"generando quindi una Sezione senza Genere" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:76 msgid "Include 'Titles' Section" @@ -3359,7 +3929,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:67 msgid "Bulk Convert" -msgstr "Conversione in massa" +msgstr "Conversione in gruppo" #: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:80 #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:185 @@ -3447,7 +4017,7 @@ msgstr "Rilevamento Errori" #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:21 msgid "Debug the conversion process." -msgstr "Rilevamento errori nel processo di conversione" +msgstr "Rilevamento errori nel processo di conversione." #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:51 @@ -3470,10 +4040,10 @@ msgid "" "conversion parameters like Table of Contents and Chapter Detection." msgstr "" "Selezionare una cartella per salvare il risultato del processo di " -"eliminazione errori. Se si specifica una cartella, Calibre metterá molti " +"eliminazione errori. Se si specifica una cartella, Calibre scriverà molti " "messaggi d'errore. Questa opzione é utile per capire il processo di " -"conversione e tentare di razionalizzare i parametri di conversione come per " -"le tavole dei contenuti e l'identificazione automatica dei capitoli." +"conversione e trovare i parametri di conversione corretti per l'indice e " +"l'identificazione automatica dei capitoli." #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54 msgid "" @@ -3492,19 +4062,19 @@ msgstr "Output EPUB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:49 msgid "Do not &split on page breaks" -msgstr "Non &spezzare nelle interruzioni di pagina." +msgstr "Non ÷re nelle interruzioni di pagina" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:50 msgid "No default &cover" -msgstr "Non esiste una &copetina predefinita" +msgstr "Nessuna &copertina predefinita" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:51 msgid "No &SVG cover" -msgstr "Nessuna cover &SVG" +msgstr "Nessuna copertina &SVG" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:52 msgid "Preserve cover &aspect ratio" -msgstr "" +msgstr "Mantieni le &proporzioni della copertina" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:53 msgid "Split files &larger than:" @@ -3520,7 +4090,7 @@ msgstr "Input FB2" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:29 msgid "Do not insert a &Table of Contents at the beginning of the book." -msgstr "Non inserire a &Table di contenuti all'inizio del libro" +msgstr "Non inserire un &indice all'inizio del libro." #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output.py:14 msgid "FB2 Output" @@ -3552,19 +4122,19 @@ msgid "" "ebook.com/user_manual/conversion.html#font-size-rescaling\">User Manual " "for a discussion of how font size rescaling works.

    " msgstr "" -"

    Questo assistente vi aiuterá a scegliere una grandezza di carattteri " -"adeguata ai vostri bisogni. Indicate la dimensione di base del documento " -"sorgente e poi una dimensione di input. L'assistente visualizzerá le " -"corrispondenze e l'effetto del riaggiustamento prodotto dall'algoritmo di " -"conversione. É possibile modificare l'algoritmo cambiando le dimensioni dei " -"caratteri di base e tipo di carattere in basso. Quando siete soddisfatti con " -"la scelta, premere OK.

    p>Come parametro predefinito, la dimensione del " -"carattere di base é zero e/o non é specificato un tipo di carattere; Calibre " -"userá i valori presenti nel Profilo di output selezionato

    \n" -"

    Vedere il Questa procedura permetterà di scegliere una grandezza di carattteri " +"adeguata. Indicare la dimensione di base dei caratteri del documento " +"sorgente e poi una dimensione dei caratteri di input. La procedura " +"visualizzerá le corrispondenze e l'effetto del riaggiustamento prodotto " +"dall'algoritmo di conversione. È possibile modificare l'algoritmo cambiando " +"le dimensioni dei caratteri di base e tipo di carattere. Una volta trovati i " +"valori giusti, fare clic su OK.

    \n" +"

    Come parametro predefinito, se la dimensione del carattere di base é zero " +"e/o non é specificato un tipo di carattere, Calibre userá i valori presenti " +"nel profilo di output corrente.

    \n" +"

    Consultare il manuale " -"d'uso per un trattamento piú dettagliato sull'aggiustamento delle " -"grandezze.

    " +"d'uso per capire come funziona il ridimensionamento dei caratteri.

    " #: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:103 msgid "&Output document" @@ -3625,15 +4195,15 @@ msgstr "Controlla l'aspetto dell'output" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:30 msgid "Original" -msgstr "" +msgstr "Originale" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:31 msgid "Left align" -msgstr "" +msgstr "Allinea a sinistra" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:32 msgid "Justify text" -msgstr "" +msgstr "Testo giustificato" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:120 msgid "&Disable font size rescaling" @@ -3645,8 +4215,7 @@ msgstr "&Grandezza caratteri di base:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:124 msgid "Wizard to help you choose an appropriate font size key" -msgstr "" -"Assistente per aiutare a scegliere la grandezza appropriata dei carateri" +msgstr "Procedura per scegliere la dimensione dei caratteri appropriata" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:126 msgid "Line &height:" @@ -3662,7 +4231,7 @@ msgstr "Rimuovi gli spa&zi tra i paragrafi" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:130 msgid "Indent size:" -msgstr "Ampiezza dell'indentazione:" +msgstr "Ampiezza del rientro:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:131 msgid "" @@ -3670,9 +4239,9 @@ msgid "" "paragraph indent, to ensure that paragraphs can be easily distinguished. " "This option controls the width of that indent." msgstr "" -"

    Quando Calibre rimuove gli spazi fra paragrafi, aggiunge automaticamente " -"ai paragrafi indentazione per assicurarsi che i paragrafi siano facilmente " -"distinguibili. Questa opzione controlla l'ampiezza dell'indentazione." +"

    Quando Calibre rimuove la spaziatura tra i paragrafi, inserisce " +"automaticamente un rientro di paragrafo, per assicurarsi che i paragrafi " +"siano ben distinti. Questa opzione controlla l'ampiezza del rientro." #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:132 msgid " em" @@ -3680,7 +4249,7 @@ msgstr " em" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:133 msgid "Text justification:" -msgstr "" +msgstr "Giustificazione testo:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:134 msgid "&Linearize tables" @@ -3692,7 +4261,7 @@ msgstr "&CSS addizionale" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:136 msgid "&Transliterate unicode characters to ASCII" -msgstr "" +msgstr "&Transcodifica i caratteri unicode in ASCII" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137 msgid "Insert &blank line" @@ -3700,7 +4269,7 @@ msgstr "Inserimento di righe &vuote" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:138 msgid "Keep &ligatures" -msgstr "" +msgstr "Mantieni &legami" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:19 msgid "LRF Output" @@ -3712,15 +4281,15 @@ msgstr "Abilitare rotazione &automatica delle immagini larghe" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:117 msgid "&Wordspace:" -msgstr "&Wordspace:" +msgstr "&Spazio tra le parole:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:119 msgid "Minimum para. &indent:" -msgstr "&indent minimo per paragrafo" +msgstr "&Rientro minimo del paragrafo:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:121 msgid "Render &tables as images" -msgstr "Rappresentare &tables come immagini" +msgstr "Trasforma le &tabelle in immagini" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:122 msgid "Text size multiplier for text in rendered tables:" @@ -3729,15 +4298,15 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:123 msgid "Add &header" -msgstr "Aggiungi &header" +msgstr "Aggiungi &intestazione" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:124 msgid "Header &separation:" -msgstr "Testata & stacchi" +msgstr "&Spazio dall'intestazione:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:126 msgid "Header &format:" -msgstr "&format di testata:" +msgstr "&Formato dell'intestazione:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:127 msgid "&Embed fonts" @@ -3745,15 +4314,15 @@ msgstr "Caratteri &Embed" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:128 msgid "&Serif font family:" -msgstr "Famiglia di carateri &Serif:" +msgstr "Famiglia di caratteri &Serif:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:129 msgid "S&ans-serif font family:" -msgstr "Famiglia di carateri S&ans-Serif:" +msgstr "Famiglia di caratteri S&ans-Serif:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:130 msgid "&Monospaced font family:" -msgstr "Famiglia di carateri &Monospaced:" +msgstr "Famiglia di caratteri &Monospaced:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:114 @@ -3766,81 +4335,81 @@ msgid "" "Set the metadata. The output file will contain as much of this metadata as " "possible." msgstr "" -"Specifica i meta dati. Il documento di output conterrá quanti metadati " +"Specificare i metadati. Il documento di output conterrá quanti più metadati " "possibili." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Seleziona copertina per " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Impossibile leggere" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Errore nella lettura del file" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " non è un'immagine valida" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Copertina del libro" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Usa copertina del file di &origine" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Ca&mbia l'immagine di copertina:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "Usa copertina del file di &origine" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Titolo: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 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:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "A&utore(i): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "Classifica&zione autore:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" @@ -3848,45 +4417,45 @@ msgstr "" "Cambia l'autore di questo libro. Autori multipli devono essere separati da " "una virgola" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Editore: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "T&ag: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

    They can be any words or phrases, separated by commas." msgstr "" "I tag categorizzano un libro. Questo è particolarmente utile durante le " -"ricerche.

    Possono essere qualsiasi parola o frase, separati da una " -"virgola" +"ricerche.

    Possono essere qualsiasi parola o frase, separati da " +"virgole." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Serie:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "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:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Libro " @@ -3900,7 +4469,7 @@ msgstr "Predefinito" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:67 msgid "&Title for Table of Contents:" -msgstr "&Title per la tabella di contenuti (indice):" +msgstr "&Titolo per l'indice:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:68 msgid "Rescale images for &Palm devices" @@ -3916,7 +4485,7 @@ msgstr "Disattiva la compressione per il contenuto dei documenti" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:71 msgid "Do not add Table of Contents to book" -msgstr "Non aggiungere una tabella dei contenuti (indice) al libro" +msgstr "Non aggiungere un indice al libro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:72 msgid "Kindle options" @@ -3928,7 +4497,7 @@ msgstr "Carattere Testata Periodica:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:74 msgid "Personal Doc tag:" -msgstr "Tag Documenti Personali" +msgstr "Tag Documenti Personali:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup.py:35 msgid "Page Setup" @@ -3971,14 +4540,14 @@ msgid "PDB Input" msgstr "Input PDB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Considera ogni linea come un paragrafo" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" -msgstr "Inferire il formato di stampa" +msgstr "Individuare il formato di stampa" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output.py:16 msgid "PDB Output" @@ -3994,11 +4563,11 @@ msgstr "Input PDF" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:39 msgid "Line &Un-Wrapping Factor:" -msgstr "Fattore di &Un-Wrapping delle linee" +msgstr "Fattore di &suddivisione delle linee:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:40 msgid "No &Images" -msgstr "Nesuna &images:" +msgstr "Nessuna &immagine" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output.py:17 msgid "PDF Output" @@ -4006,30 +4575,25 @@ msgstr "Output PDF" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:43 msgid "&Paper Size:" -msgstr "Grandezza &paper:" +msgstr "Formato &pagina:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:44 msgid "&Orientation:" -msgstr "&Orientazione:" +msgstr "&Orientamento:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:45 msgid "Preserve &aspect ratio of cover" -msgstr "" +msgstr "Mantieni le &proporzioni della copertina" #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output.py:14 msgid "RB Output" msgstr "Output RB" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1677 -msgid "Choose the format to view" -msgstr "Scegliere il formato da leggere" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "Cannot build regex using the GUI builder without a book." msgstr "" -"Non é possibile creare una regex usando l'interfaccia del GUI builder senza " -"un libro" +"Impossibile creare un'espressione regolare usando il GUI builder senza un " +"libro." #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "No formats available" @@ -4058,7 +4622,7 @@ msgstr "Test" #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:171 msgid "Convert" -msgstr "Conversione" +msgstr "Converti" #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:196 msgid "Options specific to the input format." @@ -4096,7 +4660,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:34 msgid "Detect chapters at (XPath expression):" -msgstr "Determinare i capitoli a (espressione XPath)" +msgstr "Individuare i capitoli con (espressione XPath):" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:35 msgid "Insert page breaks before (XPath expression):" @@ -4104,19 +4668,19 @@ msgstr "Inserire interruzioni di pagina prima di (espressione XPath)" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:37 msgid "Header regular expression:" -msgstr "Espressione regolare per la testata." +msgstr "Espressione regolare per l'intestazione:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:40 msgid "Footer regular expression:" msgstr "Espressione regolare per il piè di pagina." #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Espressione regolare non valida: %s" @@ -4140,7 +4704,7 @@ msgstr "Rimuovi la prima &image" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:62 msgid "Insert &metadata as page at start of book" -msgstr "Inserimento &metadata come prima pagina del libro" +msgstr "Inserire i &metadati come prima pagina del libro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:63 msgid "&Preprocess input file to possibly improve structure detection" @@ -4166,7 +4730,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:18 msgid "Control the creation/conversion of the Table of Contents." -msgstr "Controllo della creazione/conversione delle tavole dei contenuti." +msgstr "Controllo della creazione/conversione dell'indice." #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:29 msgid "Level &1 TOC (XPath expression):" @@ -4182,11 +4746,11 @@ msgstr "Livello &3 tavola dei contenuti (espressione XPath)" #: /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&on aggiungere al sommario i capitoli autorilevati" +msgstr "N&on aggiungere all'indice i capitoli rilevati." #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:64 msgid "Number of &links to add to Table of Contents" -msgstr "N&umero di link da aggiungere al sommario" +msgstr "N&umero di link da aggiungere all'indice" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:65 msgid "Chapter &threshold" @@ -4194,7 +4758,7 @@ msgstr "I&nizio capitolo" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:66 msgid "&Force use of auto-generated Table of Contents" -msgstr "&Forza la Tabella dei Contenuti auto-generata" +msgstr "&Forza l'uso dell'indice generato automaticamente." #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67 msgid "TOC &Filter:" @@ -4204,29 +4768,28 @@ msgstr "Tavola dei contentuti (TOC) &Filter." msgid "TXT Input" msgstr "Input TXT" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "Analizzare utilizzando markdown" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

    Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -"

    Markdown e' un semplice linguaggio markup per documenti di testo che " -"permette formattazione avanzata. Per maggiori informazioni andate su Markdown è un semplice linguaggio markup per documenti di testo che " +"permette la formattazione avanzata. Per maggiori informazioni visitare markdown." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -"Non inserire la tabella dei contenuti nel testo di output quando si utilizza " -"il markdown." +"Non inserire l'indice nel testo di output quando si utilizza il markdown." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" -msgstr "" +msgstr "Mantieni gli &spazi" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:16 msgid "TXT Output" @@ -4234,7 +4797,7 @@ msgstr "Output TXT" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:46 msgid "&Line ending style:" -msgstr "Stile per il termine di &Line" +msgstr "Tipo di interruzione di &linea:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:48 msgid "&Maximum line length:" @@ -4261,7 +4824,7 @@ msgstr "Utilizza il wizard di aiuto per create le espressioni XPath" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:68 msgid "Match HTML &tags with tag name:" -msgstr "Uguagliare HTML &tags con il nome di etichetta" +msgstr "Far corrispondere i &tag HTML con il nome del tag:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:69 msgid "*" @@ -4332,14 +4895,19 @@ msgid "" "tag.

    To learn more advanced usage of XPath see the XPath Tutorial." msgstr "" -"Selezionare i formati disponibili e il loro ordine per questo dispositivo di " -"lettura." +"

    Ad esempio, per trovare tutti i tag h2 che hanno class=\"chapter\", " +"impostare tag a h2, attributo a class e valore a " +"chapter.

    Con l'attributo in bianco verrà trovato ogni attributo " +"e lasciando in bianco il valore verrà trovato ogni valore. Impostando il tag " +"a * verrà trovato ogni tag.

    Per imparare concetti più avanzati di " +"XPath consultare il Tutorial di XPath." -#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:119 msgid "Cover browser could not be loaded" -msgstr "" +msgstr "Impossibile caricare il browser di copertine" -#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:171 msgid "Browse by covers" msgstr "Sfoglia per copertine" @@ -4348,13 +4916,14 @@ msgstr "Sfoglia per copertine" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:238 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:242 msgid "Undefined" -msgstr "" +msgstr "Non definito" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 @@ -4370,298 +4939,322 @@ msgstr "No" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:115 msgid "star(s)" -msgstr "" +msgstr "stelle" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:116 msgid "Unrated" -msgstr "" +msgstr "Non votato" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr " indice:" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "Numera automaticamente i libri in questa serie" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" -msgstr "" +msgstr "Elimina tutti i tag" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" -msgstr "" +msgstr "tag da aggiungere" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" -msgstr "" +msgstr "tag da eliminare" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "Nessun dettaglio disponibile." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." -msgstr "Il dispositivo di lettura non più collegato." +msgstr "Dispositivo non più collegato." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" -msgstr "Ottieni informazioni sul dispositivo di lettura" +msgstr "Recupera informazioni sul dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:274 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" -msgstr "Ottieni la lista dei libri del dispositivo di lettura" +msgstr "Recupera la lista dei libri del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "Ricevi annotazioni dal dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" -msgstr "Invia metadati al dispositivo di lettura" +msgstr "Invia metadati al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "Invia collezioni al dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" -msgstr "Invia %d libri nel dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:317 -msgid "Delete books from device" -msgstr "Cancella i libri dal dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 -msgid "Download books from device" -msgstr "Scarica libri dal dispositivo di lettura" +msgstr "Invia %d libri al dispositivo" #: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 +msgid "Delete books from device" +msgstr "Cancella i libri dal dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 +msgid "Download books from device" +msgstr "Scarica libri dal dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" -msgstr "Visualizza libro sul dispositivo di lettura" +msgstr "Visualizza libro sul dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" -msgstr "Azione che specifica l'invio predefinito al dispositivo di lettura." +msgstr "Imposta azione predefinita di invio" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:392 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "Invia messaggio elettronico a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" -msgstr "" +msgstr " ed elimina dalla biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Invia alla memoria principale" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Invia alla scheda di memoria A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Invia alla scheda di memoria B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:414 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:423 -msgid "Main Memory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 -msgid "Storage Card A" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 -msgid "Storage Card B" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:441 -msgid "Send and delete from library" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 +msgid "Main Memory" +msgstr "Memoria principale" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 +msgid "Send and delete from library" +msgstr "Invia ed elimina dalla biblioteca" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" -msgstr "" +msgstr "Invia uno specifico formato" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" -msgstr "" +msgstr "Connetti alla cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 -msgid "Disconnect from folder" -msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "Connetti ad iTunes" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:494 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "Espelli dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" -msgstr "Prendi annotazioni (sperimentale)" +msgstr "Preleva annotazioni (sperimentale)" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 +msgid "Error communicating with device" +msgstr "Errore di comunicazione col dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 +msgid "Select folder to open as device" +msgstr "Selezionare la cartella da aprire come dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 +msgid "Failed" +msgstr "Fallito" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 +msgid "Error talking to device" +msgstr "Errore di comunicazione col dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 +msgid "" +"There was a temporary error talking to the device. Please unplug and " +"reconnect the device and or reboot." +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/device.py:753 +msgid "Device: " +msgstr "Dispositivo: " + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 +msgid " detected." +msgstr " individuato." + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 +msgid "Connected " +msgstr "Connesso " + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "Selezione per l'invio" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" -msgstr "Selezionare il formato da inviare al dispositivo di lettura" +msgstr "Selezionare il formato da inviare al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" -msgstr "Nessun dispositivo di lettura" +msgstr "Nessun dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" -msgstr "Non é possibile inviare: nessun dispositivo di lettura connesso" +msgstr "Impossibile inviare: nessun dispositivo connesso" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Nessuna scheda" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" -msgstr "" -"Non é possibile inviare: il dispositivo di lettura non ha schede di memoria" +msgstr "Impossibile inviare: il dispositivo non ha schede di memoria" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:672 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "Libro elettronico" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "Troverete allegato il libro elettronico" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "di" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:677 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "nel formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:690 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Spedizione di un messaggio elettronico a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:720 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:727 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:819 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:880 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:999 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "Nessun formato adatto" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:721 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" "Convertire automaticamente i libri selezionati prima di inviare con posta " "eletrronica?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Non é stato possibile inviare ilibri indicati via posta elettronica poiché " "non sono stati trovati formati adatti:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:746 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "Non é stato possibile inviare dei libri via posta elettronica" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:747 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "Non é stato possibile inviare via posta elettronica questi libri:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:751 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "Inviato per posta elettronica" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "Notizie:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:779 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "Allegato c'é" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:790 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Notizie inviate a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:820 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -"Convertire automaticamente i libri seguenti prima di inviare al dispositivo " -"di lettura?" +"Convertire automaticamente i libri seguenti prima di inviarli al dispositivo?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Inviando i cataloghi al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." -msgstr "Invio notizie al dispositivo di lettura in corso." +msgstr "Invio delle notizie al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." -msgstr "Invio libri al dispositivo di lettura." +msgstr "Invio dei libri al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1007 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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 "" -"Non é possibile inviare i libri seguenti al dispositivo di lettura, poiché " -"nessun formato adequato é stato trovato. É necessario convertire il libro o " -"i libri in un formato supportato dal vostro dispositivo." +"Impossibile inviare i libri seguenti al dispositivo, poiché non è stato " +"trovato un formato adeguato. É prima necessario convertire i libri in un " +"formato supportato dal dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" -msgstr "Spazio insufficiente sul dispositivo di lettura" +msgstr "Spazio sul dispositivo insufficiente" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

    Cannot upload books to device there is no more free space available " msgstr "" -"

    Impossibile salvare libri sul dispositivo di lettura perché non c'è più " -"spazio disponibile " +"

    Impossibile inviare i libri al dispositivo poiché non c'è spazio " +"sufficiente " -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 msgid "Select available formats and their order for this device" msgstr "" -"Selezione dei formati disponibili e il loro ordine per questo dispositivo di " -"lettura." +"Selezionare i formati disponibili e il loro ordine per questo dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:82 msgid "Use sub directories" msgstr "Utilizza sotto cartelle" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83 +msgid "Use author sort for author" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85 msgid "Save &template:" msgstr "Salva &template" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:99 -msgid "Path" -msgstr "Percorso" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:100 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:91 -msgid "Formats" -msgstr "Formati" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:68 msgid "Fit &cover to view" -msgstr "Ridimensiona &cover per la visualizzazione" +msgstr "Ridimensiona &copertina per la visualizzazione" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:69 msgid "&Previous" @@ -4722,7 +5315,7 @@ msgstr "&Titolo:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:93 msgid "&Author(s):" -msgstr "&Autore(i)" +msgstr "&Autore(i):" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:95 msgid "&Profile:" @@ -4730,17 +5323,17 @@ msgstr "&Profilo:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog_ui.py:41 msgid "Edit Comments" -msgstr "" +msgstr "Modifica Commenti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "%(plugin_type)s %(plugins)s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " @@ -4748,23 +5341,23 @@ msgstr "" "\n" "Personalizzazione: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Conversione" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Generale" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Interfaccia" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Aggiungi/Salva" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" @@ -4772,11 +5365,11 @@ msgstr "" "Invio per \n" "email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Avanzate" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -4784,23 +5377,23 @@ msgstr "" "Server dei\n" "contenuti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Plug-in" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Invio automatico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "Posta elettronica" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "Formati per email. Verrá inviato il primo formato compatibile." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
    to this email " "address (provided it is in one of the listed formats)." @@ -4809,175 +5402,181 @@ msgstr "" "questo indirizzo di posta elettronica (presupposto che ce ne sia uno " "indicato nella lista delle opzioni)." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "nuovo indirizzo di posta elettronica." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 -msgid "System port selected" -msgstr "" +msgid "Wide" +msgstr "Largo" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 +msgid "Narrow" +msgstr "Stretto" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 +msgid "System port selected" +msgstr "Porta di sistema selezionata" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" +"Il valore %d selezionato per la porta del server di contenuti è una " +"porta di sistema. Il sistema operativo potrebbe non permettere al " +"server di funzionare su questa porta. Per essere sicuri selezionare un " +"numero di porta maggiore di 1024." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:510 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:933 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1144 -#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 -msgid "Error" -msgstr "Errore" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" "Non é stato possibile installare gli strumenti per i comandi di linea." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:514 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "Strumenti per i comandi di linea installati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:515 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "Strumenti per i comandi di linea installati in" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" "Se muovete calibre.app, sará necessario reinstallare anche gli strumenti per " "i comandi di linea." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "Percorso del plugin non valido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s non é un percorso di plugin valido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Selezionare plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Il plugin non puó essere disattivato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "il plugin: %s non puó essere disattivato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" -msgstr "Non é possibile personalizzare il plugin" +msgstr "Plugin non personalizzabile" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Plugin: %s non richiede personalizzazione" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "Personalizzazione" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:640 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" -msgstr "Non é possibile rimuovere un plugin incorporato" +msgstr "Impossibile rimuovere un plugin incorporato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:641 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -" Non é possibile rimuoverlo. Questo é un plugin incorporato. Provate invece " -"a disattivarlo." +" Impossibile rimuoverlo. Questo é un plugin incorporato. Provate invece a " +"disattivarlo." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:672 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" -msgstr "" +msgstr "Selezionare una colonna da eliminare" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:677 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" -msgstr "" +msgstr "La colonna selezionata non è una colonna personalizzata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:678 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "Si è sicuri?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:679 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" -msgstr "" +msgstr "Eliminare veramente la colonna %s e tutti i sui dati?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:746 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "File di log degli errori:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "File di log degli accessi:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:781 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:419 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "Avvio del server dei contenuti fallito" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:805 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "Selezionare un percorso per i libri" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:812 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Dimensione non valida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" "La dimensione %s non è valida. Deve essere nella forma larghezzaxaltezza" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:868 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Percorso database non valido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Percorso database non valido " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:870 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
    Must be a directory." msgstr "
    Deve essere una cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:874 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
    Cannot write to " msgstr "Percorso database non valido.
    Impossibile scrivere su " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:879 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" -msgstr "" +msgstr "Necessario riavviare" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" +"Le modifiche effettuate richiedono il riavvio di Calibre. Riavviare il prima " +"possibile." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "Controllo dell'integritá del database." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:934 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "Controllo dell'integritá del database fallito." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:939 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "Sono stati trovati problemi di consistenza" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:940 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4986,14 +5585,14 @@ msgid "" msgstr "" "I libri indicati hanno formati elencati nel database che non sono " "disponibili. I riferimenti ai formati sono stati rimossi ed é suggerito di " -"controllarli manualmente. Questo problem puó emergere se i documenti nella " -"cartella della libreria sono modificati direttamente." +"controllarli manualmente. Questo problema puó sorgere se i documenti nella " +"cartella della biblioteca vengono modificati direttamente." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "Assistente per i TAB" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " @@ -5003,42 +5602,41 @@ msgstr "" "vengono aggiunti. Calibre puó leggere i metadati sia dal contenuto dei " "documenti che dai nomi dei documenti." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "Leggi i metadati solo dal nome del &file" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -"Inverti Nome e Cognome dell'autore. Impatta esclusivamente solo i metadata " -"letti dai nomi dei files." +"Inverti nome e cognome dell'autore. Questo influisce esclusivamente sui " +"metadati letti dai nomi dei files." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "&Inverti i nomi e i cognomi dell'autore" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " "punctuation, case, etc. Author match is exact." msgstr "" -"Se esiste già un libro con simile titolo e autore,ma che non ha lo stesso " -"formato di quello che viene aggiunto, il formato è aggiunto \n" -"al libro esistente, invece di creare una nuova voce. Se il libro ha già lo " -"stesso formato, allora viene ignorato.\n" +"Se viene trovato un libro con un nome e autorei simili che non ha il formato " +"che si sta aggiungendo, il formato viene aggiunto al libro esistente, invece " +"di crearne uno nuovo. Se il libro esistente è già in quel formato, viene " +"ignorato senza notificarlo.\n" "\n" -"Corrispondenza Titolo ignora i primi articoli indefiniti (\"il\", \"a\", " -"\"una\"), la punteggiatura, maiuscole, ecc. Corrispondenza Autore fa lo " -"stesso." +"Il contronto del titolo ignora gli articoli (\"il\", \"un\", \"una\"), la " +"punteggiatura, la dimensione, ecc. L'autore viene confrontato interamente." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" @@ -5046,15 +5644,15 @@ msgstr "" "Se vengono trovati libri con titoli e autori simili, &unisci i nuovi file " "automaticamente" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "&Configura i metadati dal nome del documento" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "&Aggiunta libri" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" @@ -5062,65 +5660,88 @@ msgstr "" "Qui é possibile controllare come Calibre salva i tuoi libri quando si selezi " "il comando Salva sul disco:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Salva la &copertina separatamente" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "Aggiorna &metadati nelle copie salvate" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "Salva i metadati nei file &OPF" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" "Conversione dei caratteri non anglofoni nei loro corrispondenti &inglesi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "Formattato &date:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "&Formato dei documenti da salvare:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Sostituire gli spazi con &sottolineature" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Cambiare percorsi in &minuscolo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "&Salvataggio libri" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "Conserva le collezioni del dispositivo." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" +"Se attivo, le collezioni non verranno eliminate anche se un libro con i " +"metadati cambiati viene inviato e la collezione non è tra i metadati del " +"libro. In più, viene abilitata la modifica delle collezioni nel dispositivo. " +"Se disattivato, le collezioni rifletteranno sempre e solo i metadati nella " +"biblioteca di calibre." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -"Qui e' possibile cambiare come Calibre salva i vostri libri con il tasto di " -"Invio al dispositivo di lettura. Le opzioni possono essere sovrascritte per " -"ogni dispositivo personalizzando il plugin di controllo dei dispositivi in " -"Preferenze -> Plugins" +"Qui è possibile cambiare come Calibre salverà i libri quando verrà cliccato " +"il pulsante di Invio al dispositivo. Queste opzioni possono essere " +"sovrascritte per ogni dispositivo personalizzando il plugin di controllo dei " +"dispositivi in Preferenze->Plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "Invio al &dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Preferenze" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:537 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -5128,28 +5749,27 @@ msgstr "" "Per&corso dei libri (I libri sono salvati in cartelle salvate per autore e i " "metadati sono salvati nel file metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Sfoglia per specificare una nuova posizione del database" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:540 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "&Visualizza un avvertimento quando è disponibile una nuova versione" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" -msgstr "" -"Scarica i metadati &sociali (etichette, valutazioni, etc.) automaticamente" +msgstr "Scarica i metadati &sociali (tag, valutazioni, etc.) automaticamente" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" -msgstr "&Sovrascrivi autore e titolo quando si scaricano i metadata" +msgstr "&Sovrascrivi autore e titolo quando si scaricano i metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "&Timeout predefinito della rete:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -5157,141 +5777,156 @@ msgstr "" "Imposta il timeout predefinito per gli scaricamenti dalla rete (cioè ogni " "volta che si usa Internet per prelevare informazioni)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:545 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " secondi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Ling&ua (richiede il riavvio):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Normale" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Massima" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Minima" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "&Priorità dei lavori:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Formato preferito per l'&output:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Ordine dei formati preferiti per l'&input:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "&Usa numeri romani per i numeri di serie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "Abilita l'icona nel vassoio di sistema (richiede il riavvio)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Visualizza le ¬ifiche nella barra di sistema." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" -msgstr "" +msgstr "Visualizza lo &splash screen all'avvio" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -"Visualizza il &browser di copertine in una finestra separata (richiede il " +"Visualizza il &browser di copertine in una finestra separata (richiede " "riavvio)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +msgid "Show &average ratings in the tags browser" +msgstr "Visualizza la &media delle valutazioni nel browser dei tag" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "Cerca mentre si scrive" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "Invia automaticamente le noti&zie scaricate al lettore di libri" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -"&Rimuovi le notizie dalla libreria dopo averle inviate automaticamente al " -"dispositivo di lettura." +"&Rimuovi le notizie dalla biblioteca dopo averle inviate automaticamente al " +"dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -"&Number di copertine da visualizzare in modalitá sfoglia (richiede rilancio " -"del programma):" +"&Numero di copertine da visualizzare in modalitá sfoglia (richiede riavvio):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Barra degli strumenti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Grande" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Media" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Piccola" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" -msgstr "&Dimensione bottoni nella barra degli strumenti" +msgstr "&Dimensione dei pulsanti nella barra degli strumenti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "&Mostra testo nei bottoni della barra degli strumenti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "&Selezionare le colonne visibili nella vista biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" -msgstr "" +msgstr "Elimina una colonna personalizzata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" -msgstr "" +msgstr "Aggiungi una colonna personalizzata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" -msgstr "" +msgstr "Modifica le opzioni di una colonna personalizzata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "Utilizza il &visualizzatore interno per:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +msgid "User Interface &layout (needs restart):" +msgstr "&Aspetto interfaccia grafica (richiede riavvio):" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "Disattiva tutte le animazioni. Utile per i computer più lenti." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "Disattiva &animazioni" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "Aggiungi un indirizzo di posta elettronica a cui inviare i libri" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "&Aggiungi email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Crea &default" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "&Elimina email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" @@ -5301,63 +5936,61 @@ msgstr "" "email saranno automaticamente inviate per ogni notizia scaricata a tutti gli " "indirizzi email a cui hai abilitato l'invio automatico" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" -msgstr "" -"Numero &massimo di elaboratori di processi in attesa (richiede rilancio del " -"programma):" +msgstr "Numero &massimo di processi in attesa (richiede riavvio):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "&Controllo dell'integritá del database" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "&Installa gli strumenti per i comandi di linea" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "Apri la cartella per la &configurazione di Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" "Limita il massimo numero di job simultanei al numero dei &processori " "disponibili" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "&Debug e riconoscimento dei dispositivi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -"Calibre include un server che ti permette di accedere alla tua collezione di " -"libri usando un browser in qualunque parte del mondo. Qualsiasi cambiamento " -"nella configurazione verrà attivato solo dopo il riavvio del server." +"Calibre include un server che permette di accedere alla collezione di libri " +"usando un browser in qualunque parte del mondo. Qualsiasi cambiamento nella " +"configurazione verrà attivato solo dopo il riavvio del server." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "&Porta del server:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "&Nome utente:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "&Password:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -5365,7 +5998,7 @@ msgstr "" "Se si lascia la password in bianco, chiunque potrà accedere alla propria " "collezione di libri utilizzando l'interfaccia web." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -5373,45 +6006,45 @@ msgstr "" "La dimensione massima (larghezzaxaltezza) per le copertine visualizzate. Le " "copertine più larghe vengono ridimensionate. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "Dimensi&one massima copertina:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "&Mostra password" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "Massimo elementi &OPDS per richiesta:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" -msgstr "" +msgstr "Elementi OPDS &sparsi massimi:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "A&vvia il server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "&Ferma il server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "&Test sul server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "Avvia a&utomaticamente il server all'apertura" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Visualizza i file di l&og del server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

    Remember to leave calibre running as the server only runs as long as " @@ -5428,7 +6061,7 @@ msgstr "" "un nuovo catalogo sul tuo iPhone. In questo caso myhostname é da intendersi " "come il valore IP appropriato del computer su cui Calibre é attivo." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." @@ -5436,49 +6069,49 @@ msgstr "" "Qui è possibile personalizzare le funzioni di Calibre modificando quali " "plugin sono usati dal programma." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Attivare/&Disattiva il plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "&Configura il plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&Rimuovi il plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Aggiungi un nuovo plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "Plugin &file:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&Aggiungi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:125 msgid "Create Tag-based Column" -msgstr "" +msgstr "Crea colonne basate sui tag" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:126 msgid "Lookup name" -msgstr "" +msgstr "Parola chiave" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:127 msgid "Column heading" -msgstr "" +msgstr "Titolo colonna" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:128 msgid "Column type" -msgstr "" +msgstr "Tipo di colonna" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:129 msgid "Use brackets" -msgstr "" +msgstr "Usa parentesi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:130 msgid "Values can be edited" @@ -5486,130 +6119,142 @@ msgstr "I valori possono essere modificati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:135 msgid "Text" -msgstr "" +msgstr "Testo" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:136 msgid "Number" -msgstr "" +msgstr "Numero" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:850 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Data" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:138 msgid "Tag on book" -msgstr "" +msgstr "Tag del libro" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:139 msgid "Explanation text added in create_ct_column.py" -msgstr "" +msgstr "Testo di spiegazione aggiunto in create_ct_column.py" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:140 msgid "Create and edit tag-based columns" -msgstr "" +msgstr "Crea e modifica colonne basate sul tag" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:19 msgid "Text, column shown in the tag browser" -msgstr "" +msgstr "Testo, colonna visualizzata nel browser dei tag" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:22 msgid "Comma separated text, like tags, shown in the tag browser" msgstr "" +"Testo separato da vrigole, come i tag, visualizzato nel browser dei tag" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:25 msgid "Long text, like comments, not shown in the tag browser" -msgstr "" +msgstr "Testo esteso, come i commenti, non visualizzato nel browser dei tag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "Colonna testuale per mantenere informazioni sulle serie" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" -msgstr "" +msgstr "Numeri in virgola mobile" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 -msgid "Ratings, shown with stars" -msgstr "" +msgstr "Interi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +msgid "Ratings, shown with stars" +msgstr "Votazione, visualizza con le stelle" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" -msgstr "" +msgstr "Sì/no" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" -msgstr "" +msgstr "Nessuna colonna selezionata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" -msgstr "" +msgstr "Non è stata selezionata nessuna colonna" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" -msgstr "" +msgstr "La colonna selezionata non è una colonna personalizzata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" -msgstr "" +msgstr "Non è stata fornita alcuna parola chiave" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" +"L'etichetta può contenere sono lettere, numeri e underscore, e deve iniziare " +"con una lettera" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" -msgstr "" +msgstr "Nessun titolo per la colonna specificato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" -msgstr "" +msgstr "La parola chiave %s è già in uso" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" -msgstr "" +msgstr "Il titolo %s è già in uso" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" +"La parola chiave deve essere composta da lettere minuscole e non può " +"contentere \":\" o spazi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:117 msgid "Create or edit custom columns" -msgstr "" +msgstr "Crea o modifica colonne personalizzate" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:102 msgid "&Lookup name" -msgstr "" +msgstr "&Parola chiave" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:103 msgid "Column &heading" -msgstr "" +msgstr "&Titolo colonna" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:104 msgid "" "Used for searching the column. Must contain only digits and lower case " "letters." msgstr "" +"Usato per cercare la colonna. Può contere solo numberi e lettere minuscole." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:105 msgid "" "Column heading in the library view and category name in the tag browser" msgstr "" +"Titolo colonne nella vista biblioteca e nome categoria nel browser dei tag" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:106 msgid "Column &type" -msgstr "" +msgstr "&Tipo di colonna" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:107 msgid "What kind of information will be kept in the column." -msgstr "" +msgstr "Che tipo di informazione verrà mantenuto nella colonna." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:108 msgid "" @@ -5621,18 +6266,25 @@ msgid "" "

  • dd MMMM yy gives 05 January 10
  • \n" " " msgstr "" +"

    Formato data. Usare 1-4 'd's per il giorno, 1-4 'M's per il mese e 2 o 4 " +"'y's per l'anno.

    \n" +"

    Per esempio:\n" +"

      \n" +"
    • ddd, d MMM yyyy diventa Lun, 5 Gen 2010
    • \n" +"
    • dd MMMM yy diventa 05 Gen 10
    • \n" +"
    " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:114 msgid "Use MMM yyyy for month + year, yyyy for year only" -msgstr "" +msgstr "Usare MMM yyyy per il mese + anno, yyyy solamente per l'anno" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:115 msgid "Default: dd MMM yyyy." -msgstr "" +msgstr "Predefinito: dd MMM yyyy." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:116 msgid "Format for &dates" -msgstr "" +msgstr "Formato per le &date" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/device_debug.py:21 msgid "Getting debug information" @@ -5678,50 +6330,71 @@ msgstr "Variabili disponibili:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/social.py:34 msgid "Downloading social metadata, please wait..." -msgstr "Scaricamento dei metadati sociali, per favore attendere..." +msgstr "Scaricamento dei metadati sociali, attendere..." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:50 msgid "&Show this warning again" -msgstr "&Show ancora questa avvertenza" +msgstr "&Visualizza ancora questa avvertenza" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/conversion_error_ui.py:42 msgid "ERROR" msgstr "ERRORE" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +msgid "Location" +msgstr "Posizione" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 +msgid "Format" +msgstr "Formato" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 +msgid "Delete from device" +msgstr "Elimina dal dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 +msgid "Author sort" +msgstr "Ordinamento per autore" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 +msgid "Manage authors" +msgstr "Gestione autori" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Classificazione autore" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." -msgstr "Cercando metadati..." +msgstr "Ricerca metadati..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "Non é stato possibile trovare metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -"Sembra che lo scaricamento dei metadati si sia bloccato. Provare piú tardi." +"Sembra che lo scaricamento dei metadati si sia bloccato. Riprovare piú tardi." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Avvertenza" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" -msgstr "Non é stato possibile scaricare i metadati da:" +msgstr "Impossibile recuperare i metadati da:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" -msgstr "Messun metadato trovato" +msgstr "Nessun metadato trovato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5766,8 +6439,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:91 msgid "Download &social metadata (tags/rating/etc.) for the selected book" msgstr "" -"Scaricare i &social metadati (etichette, valutazioni, etc) per il libro " -"selezionato" +"Scaricare i &social metadati (tag, valutazioni, etc) per il libro selezionato" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:92 msgid "Overwrite author and title with author and title of selected book" @@ -5784,19 +6456,19 @@ msgstr "Lavori attivi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:45 msgid "&Stop selected job" -msgstr "I&nterrompi il lavoro selezionato" +msgstr "&Interrompi il lavoro selezionato" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:46 msgid "Show job &details" -msgstr "Visualizza i &details del processo in corso" +msgstr "Mostra i &dettagli del lavoro" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:47 msgid "Stop &all jobs" -msgstr "Ferma &all i processi in corso" +msgstr "&Ferma tutti i lavori" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:24 msgid "Editing meta information for %d books" -msgstr "" +msgstr "Modifica metadati per %d libri" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:157 msgid "Edit Meta information" @@ -5811,7 +6483,7 @@ msgid "Author s&ort: " msgstr "Author s&ort: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -5820,23 +6492,23 @@ msgstr "" "esempio, Charles Dickens deve essere classificato come Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 -#: /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:372 msgid "&Rating:" -msgstr "&Giudizio:" +msgstr "&Valutazione:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" -msgstr "Giudizio su questo libro. 0-5 stelle" +msgstr "Valutazione di questo libro. 0-5 stelle" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:165 msgid "No change" msgstr "Nessuna modifica" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " stelle" @@ -5846,8 +6518,8 @@ msgstr "Aggiungi ta&gs: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "Apri l'editor dei tag" @@ -5865,7 +6537,7 @@ msgstr "Cancella for&mato:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:178 msgid "&Swap title and author" -msgstr "&Swap titolo per autore" +msgstr "&Scambia titolo e autore" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:179 msgid "" @@ -5874,10 +6546,10 @@ msgid "" "So if you selected Book A and then Book B,\n" "Book A will have series number 1 and Book B series number 2." msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" +"I libri selezionati verranno automaticamente numerati,\n" +"in base all'ordine di selezione.\n" +"Quindi se è stato selezionato prima A e poi B,\n" +"il libro A avrà numero di serie 1 e B numero di serie 2." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" @@ -5885,218 +6557,224 @@ msgid "" "\n" "Future conversion of these books will use the default settings." msgstr "" +"Elimina le impostazione di conversione per i libri selezionati.\n" +"\n" +"Per le prossime conversioni di questi libri verranno usate le impostazioni " +"predefinite." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:187 msgid "Remove &stored conversion settings for the selected books" -msgstr "" +msgstr "Elimina le impostazioni di &conversione per i libri selezionati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" -msgstr "" +msgstr "Metadati &principali" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" -msgstr "" +msgstr "Metadati &aggiuntivi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "L'immagine non ee valida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "Selezionare formati per: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:876 -msgid "Books" -msgstr "Libri" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "Non ci sono privilegi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "Non hai privilegi per leggere i documenti indicati:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "Nessun formato selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" -msgstr "Non é possibile leggere i metadati" +msgstr "Impossibile leggere i metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" -msgstr "Non é possibile leggere i metadati dai formati %s" +msgstr "Impossibile leggere i metadati dai formati %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" -msgstr "Non é possibile visualizzare la copertina" +msgstr "Impossibile visualizzare la copertina" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" -msgstr "Non é possibile visualizzare la copertina dai formati %s" +msgstr "Impossibile visualizzare la copertina con formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" -msgstr "La copertina nel formato %s é invalida." +msgstr "La copertina nel formato %s non è valida." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "Interrompere la modifica di tutti i libri rimanenti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:444 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:449 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "Questo numero ISBN è valido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:452 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "Questo numero ISBN è valido" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 +msgid "Cannot use tag editor" +msgstr "Impossibile utilizzare l'editor di tag" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 +msgid "The tags editor cannot be used if you have modified the tags" +msgstr "Non si può utilizzare l'editor di tag se i tag sono stati modificati" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Scaricamento della copertina..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 msgid "Cannot fetch cover" msgstr "Impossibile scaricare la copertina" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:561 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 msgid "Could not fetch cover.
    " msgstr "Impossibile scaricare la copertina
    " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." -msgstr "Lo scaricamento ha raggiunto il limite di tempo" +msgstr "Il tempo di scaricamento è scaduto." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -"Non é stato possibile trovare una copertina per questo libro. Si provi a " +"Impossibile trovare una copertina per questo libro. Provare prima a " "specificare il codice ISBN." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Copertina inutilizzabile" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" -msgstr "La copertina non é un'immagine accettabile." +msgstr "La copertina non é un'immagine valida." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "Si sono verificati errori" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" -msgstr "Si sono verficiati errori nello scaricamento dei metadati sociali" +msgstr "Si sono verificati errori nello scaricamento dei metadati sociali" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" -msgstr "Non é possibile scaricare i metadati." +msgstr "Impossibile scaricare i metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:643 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" "Dovete specificare alemno uno fra codice ISBN, titolo, autore o editore" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:714 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "Permesso negato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:715 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 msgid "Could not open %s. Is it being used by another program?" -msgstr "" -"Non é possibile aprire %s. Potrebbe essere in uso in un altro programma." +msgstr "Impossibile aprire %s. Potrebbe essere in uso da un altro programma." -#: /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:361 msgid "Edit Meta Information" msgstr "Modifica metadati" -#: /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:362 msgid "Meta information" msgstr "Metadati" -#: /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:365 msgid "Swap the author and title" msgstr "Scambia titolo e autore" -#: /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:368 msgid "Author S&ort: " msgstr "&Classificazione 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "Rimuovi le serie inutilizzate (che non hanno libri)" -#: /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:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" -msgstr "Pubblicato&d:" +msgstr "&Pubblicato:" -#: /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:390 msgid "dd MMM yyyy" msgstr "gg MMM aaaa" -#: /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:391 msgid "&Date:" msgstr "&data" -#: /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:392 msgid "&Comments" msgstr "&Commenti" -#: /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:393 msgid "&Fetch metadata from server" -msgstr "&Fetch i metadati dal server" +msgstr "&Recupera i metadati dal server" -#: /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:394 msgid "Available Formats" msgstr "Formati disponibili" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 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:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "Cancella il formato selezionato dal database per questo libro" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" -msgstr "Specifica la copertina del libro dal formato selezionato" +msgstr "Imposta la copertina del libro dal formato selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "Aggiorna i metadati dai metadati del formato selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "Ripristinare la copertina predefinita" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" -msgstr "Scaricamento &cover" +msgstr "Scarica &copertina" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:56 msgid "Password needed" @@ -6110,34 +6788,36 @@ msgstr "Interruzione..." msgid "" "The current saved search will be permanently deleted. Are you sure?" msgstr "" +"La ricerca corrente salvata verrà definitivamente cancellata. " +"Continuare?" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:83 msgid "Saved Search Editor" -msgstr "" +msgstr "Editor di ricerche salvate" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:84 msgid "Saved Search: " -msgstr "" +msgstr "Ricerche salvate: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:85 msgid "Select a saved search to edit" -msgstr "" +msgstr "Selezionare una ricerca salvata da modificare" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:86 msgid "Delete this selected saved search" -msgstr "" +msgstr "Elimina la ricerca salvata selezionata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 msgid "Enter a new saved search name." -msgstr "" +msgstr "Inserire un nuovo nome per la ricerca salvata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 msgid "Add the new saved search" -msgstr "" +msgstr "Aggiungi una nuova ricerca salvata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 msgid "Change the contents of the saved search" -msgstr "" +msgstr "Cambia il contenuto della ricerca salvata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:119 msgid "Need username and password" @@ -6176,7 +6856,7 @@ msgstr "Aggiungi una fonte di notizie personalizzata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:224 msgid "Download all scheduled new sources" -msgstr "" +msgstr "Scarica tutte le nuove sorgenti programmate" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:321 msgid "No internet connection" @@ -6197,7 +6877,7 @@ msgstr "La ricetta richiede l'uso di un utente e password" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:195 msgid "Download &all scheduled" -msgstr "Scaricamento di &all programmati" +msgstr "Scarica &tutti i programmati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:196 msgid "blurb" @@ -6205,7 +6885,7 @@ msgstr "trafiletto" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197 msgid "&Schedule for download:" -msgstr "&schedule per lo scaricamento" +msgstr "&Programma per lo scaricamento:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:198 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:208 @@ -6277,11 +6957,11 @@ msgstr "&Programma" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217 msgid "Add &title as tag" -msgstr "Aggiunta di &title come etichetta" +msgstr "Aggiungi &titolo come tag" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218 msgid "&Extra tags:" -msgstr "&Extra etichette:" +msgstr "Tag &aggiuntivi:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219 msgid "&Advanced" @@ -6369,7 +7049,7 @@ msgid "" "Regular expression: the expression must match anywhere in the metadata" msgstr "" "Espressione regolare: l'espressione deve corrispondere in qualunque punto " -"dei metadata" +"dei metadati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:124 msgid " " @@ -6388,74 +7068,78 @@ msgid "Choose formats" msgstr "Seleziona i formati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:72 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:76 msgid "Authors" msgstr "Autori" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:101 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:107 msgid "Publishers" msgstr "Editori" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:110 msgid " (not on any book)" -msgstr "" +msgstr " (non su ogni libro)" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:162 msgid "" "The current tag category will be permanently deleted. Are you sure?" msgstr "" +"La categoria di tag corrente verrà definitivamente eliminata. " +"Continuare?" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:153 msgid "User Categories Editor" -msgstr "" +msgstr "Editor delle categorie utente" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:154 msgid "A&vailable items" -msgstr "" +msgstr "Elementi &disponibili" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:155 msgid "Apply tags to current tag category" -msgstr "" +msgstr "Applica i tag alla categoria di tag corrente" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:157 msgid "A&pplied items" -msgstr "" +msgstr "Elementi a&pplicati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:158 msgid "Unapply (remove) tag from current tag category" -msgstr "" +msgstr "Togli il tag dalla categoria di tag corrente" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:160 msgid "Category name: " -msgstr "" +msgstr "Nome categoria: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:161 msgid "Select a category to edit" -msgstr "" +msgstr "Selezionare una categoria da modificare" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:162 msgid "Delete this selected tag category" -msgstr "" +msgstr "Elimina la categoria di tag selezionata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:164 msgid "Enter a new category name. Select the kind before adding it." msgstr "" +"Inserire il nome della nuova categoria. Selezionare il tipo prima di " +"aggiungerla." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:165 msgid "Add the new category" -msgstr "" +msgstr "Aggiungi la nuova categoria" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:167 msgid "Category filter: " -msgstr "" +msgstr "Filtro categoria: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:168 msgid "Select the content kind of the new category" -msgstr "" +msgstr "Selezionare il tipo di contenuto della nuova categoria" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "Siete sicuri?" @@ -6463,9 +7147,7 @@ msgstr "Siete sicuri?" msgid "" "The following tags are used by one or more books. Are you certain you want " "to delete them?" -msgstr "" -"Queste etichette sono usate da uno o piú libri. Siete sicuri di volerle " -"rimuovere?" +msgstr "Questi tag sono usati da uno o piú libri. Eliminarli comunque?" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:123 msgid "Tag Editor" @@ -6511,65 +7193,60 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "Aggiungi il tag a quelli disponibili e applicalo al libro corrente" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:441 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" -msgstr "" +msgstr "L'elemento è vuoto" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" +"Un elemento non può essere impostato a niente. Cancellarlo piuttosto." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" -msgstr "" +msgstr "Nessun elemento selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." -msgstr "" +msgstr "Selezionare un elemento dalla lista degli elementi disponibili." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" -msgstr "" +msgstr "Nessun elemento selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." -msgstr "" +msgstr "Selezionare almeno un elemento dalla lista." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:71 -msgid "Category Editor" -msgstr "" +msgstr "Eliminare veramente i seguenti elementi?" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:72 -msgid "Items in use" -msgstr "" +msgid "Category Editor" +msgstr "Editor di categoria" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:73 +msgid "Items in use" +msgstr "Elementi da usare" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:74 msgid "" "Delete item from database. This will unapply the item from all books and " "then remove it from the database." msgstr "" +"Elimina l'elemento dal database. Questo toglierà l'elemento da tutti i libri " +"e lo eliminerà dal database." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:76 msgid "Rename the item in every book where it is used." -msgstr "" +msgstr "Rinomina l'elemento in ogni libro dove è presente." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:77 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:78 msgid "Ctrl+S" -msgstr "" +msgstr "Ctrl+S" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:51 msgid "Test email settings" @@ -6808,20 +7485,19 @@ msgstr "" "\n" "

    Specificare uno schema " -"come espressione regolare da usare per tentare di individuare i metadati dai " -"nomi dei documenti.

    \n" +"right:0px; -qt-block-indent:0; text-indent:0px;\">Specificare un'espressione " +"regolare da usare per tentare di individuare i metadati dai nomi dei " +"file.

    \n" "

    A riferimento alla sintassi " -"dell'espressione regolare é disponibile.

    \n" +"decoration: underline; color:#0000ff;\">Qui è possibile trovare " +"maggiori informazioni sulle espressioni regolari.

    \n" "

    Use the Prova l'applicazione dell'espressione regolare " -"usata in basso con qualche esempio di nomi di documenti. I gruppi " -"individuati con i vari metadati sono indicati con " -"suggerimenti.

    " +"right:0px; -qt-block-indent:0; text-indent:0px;\">Utilizzare la funzione " +"Test per provare l'espressione " +"regolare su alcuni file di esempio. I nomi dei gruppi per i vari metadati " +"sono indicati nei suggerimenti dei rispettivi campi.

    " #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:114 msgid "Regular &expression" @@ -6844,11 +7520,11 @@ msgstr "Espressione regolare (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "Nessuna corrispondenza" @@ -6884,47 +7560,47 @@ msgstr "ISBN:" msgid "Regular expression (?P)" msgstr "Espressione regolare (?P)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:36 msgid "Save single format to disk..." msgstr "Salvataggio di formato individuale sul disco..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:52 msgid "Edit metadata individually" msgstr "Modifica metadati individualmente" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:55 msgid "Edit metadata in bulk" msgstr "Modifica metadati in gruppo" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:58 msgid "Download metadata and covers" msgstr "Scarica i metadati e le copertine" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "Scarica solo i metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "Scarica solo le copertine" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "Scarica solo i metadati sociali" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" -msgstr "" +msgstr "Unisci nel primo libro selezionato - elimina gli altri" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" -msgstr "" +msgstr "Unisci nel primo libro selezionato - mantieni gli altri" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "Aggiungi libri da una singola cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -6933,7 +7609,7 @@ msgstr "" "cartella, si assume che ogni documento di libro elettronico é lo stesso " "libro in formati differenti)." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -6941,89 +7617,100 @@ msgstr "" "Aggiungi libri da cartelle includendo le sotto-cartelle (Piú di un libro per " "cartella, si assume che ogni documento di libro elettronico é differente)." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "Aggiungi un libro vuoto (Libro senza formati iniziali)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:98 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Salva su disco" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:100 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "Salva su disco in una singola cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1782 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "Salva sul disco solo il formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1785 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" -msgstr "" +msgstr "Salva solo il formato %s su disco in una cartella unica" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Leggi" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "Leggi uno specifico formato" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "Cancella i libri selezionati" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "Cancella i file di un formato specifico dai libri selezionati" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "Cancella tutti i formati dai libri selezionati, tranne..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "Cancella le copertine dai libri selezionati" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 +msgid "Remove matching books from device" +msgstr "Rimuovi i libri corrispondenti dal dispositivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "Converti individualmente" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:147 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Converti in gruppo" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "Crea un catologo di libri dalla vostra collezione in Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "Fai partire l'assistente di configurazione iniziale" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "Libri simili..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 +msgid "Add books to library" +msgstr "Aggiungi i libri alla biblioteca" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "Gestione collezioni" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" -msgstr "" +msgstr "Browser delle copertine" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" -msgstr "" +msgstr "Browser dei tag" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:336 -msgid "Side bar" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" -msgstr "" +msgstr "Dettagli del libro" #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:60 msgid "Job" @@ -7062,8 +7749,7 @@ msgstr "Impossibile terminare il lavoro" #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:217 msgid "Cannot kill jobs that communicate with the device" -msgstr "" -"Impossibile annullare i processi che comunicano col dispositivo di lettura" +msgstr "Impossibile annullare i processi che comunicano col dispositivo" #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:220 msgid "Job has already run" @@ -7073,138 +7759,116 @@ msgstr "Il lavoro è già stato avviato" msgid "Unavailable" msgstr "Non disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:280 msgid "Jobs:" msgstr "Lavori:" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:298 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/jobs.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:358 msgid " - Jobs" msgstr " - Lavori" #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 msgid "N" -msgstr "" +msgstr "N" #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 msgid "Y" -msgstr "" +msgstr "S" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" -msgstr "" +msgstr "Sul dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Dimensione (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" -msgstr "Giudizio" +msgstr "Valutazione" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1029 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1033 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 -msgid "None" -msgstr "Nessuno" - -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1039 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Libro %s di %s" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:656 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1097 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" -msgstr "" +msgstr "La parola chiave è \"{0}\"" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" -msgstr "" +msgstr "Nella biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" -msgstr "" +msgstr "Dimensione" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:852 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1023 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:101 -msgid "Collections" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019 -msgid "Format" -msgstr "Formato" - -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1079 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" -msgstr "" +msgstr "Marcato per l'eliminazione" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1082 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

    " msgstr "Doppio clic per modificarmi

    " #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:110 msgid "Hide column %s" -msgstr "" +msgstr "Nascondi colonna %s" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:115 msgid "Sort on %s" -msgstr "" +msgstr "Ordina per %s" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:116 msgid "Ascending" -msgstr "" +msgstr "Ascendente" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:119 msgid "Descending" -msgstr "" +msgstr "Discendente" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:131 msgid "Change text alignment for %s" -msgstr "" +msgstr "Cambia allineamento del testo per %s" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 msgid "Left" -msgstr "" +msgstr "Sinistra" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 msgid "Right" -msgstr "" +msgstr "Destra" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:134 msgid "Center" -msgstr "" +msgstr "Centrato" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:153 msgid "Show column" -msgstr "" +msgstr "Mostra colonna" #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165 msgid "Restore default layout" -msgstr "" +msgstr "Ripristina layout perdefinito" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Non permesso" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." msgstr "" -"Copiare direttamente sul dispositivo di lettura non é supportato. Prima é " -"necessario aggiungere il libro nella libreria di Calibre." +"La copia diretta sul dispositivo non é supportata. Prima è necessario " +"aggiungere il libro alla biblioteca di calibre." #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:47 msgid "Configure Viewer" @@ -7299,101 +7963,108 @@ msgstr "Non controllare gli aggiornamenti" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:595 msgid "Calibre Library" -msgstr "Libreria di Calibre" +msgstr "Biblioteca di calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" -msgstr "" +msgstr "Selezionare una posizione per la biblioteca di e-book calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" -msgstr "" +msgstr "Impossibile creare la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." -msgstr "" +msgstr "Impossibile creare la biblioteca in: %r." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" -msgstr "" +msgstr "Selezionare una posizione per la nuova biblioteca di calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." -msgstr "" +msgstr "Inizializzazione interfaccia grafica..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" -msgstr "" +msgstr "Ripristino fallito" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" +"Riparazione del database fallita. Avvio con una nuova biblioteca vuota." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Percorso del database sbagliato" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." -msgstr "" +msgstr "Posizione del database %r non valida. calibre verrà chiuso." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" -msgstr "" +msgstr "Database corrotto" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" +"Il database di calibre sembra corrotto. Tentare una riparazione automatica? " +"Altrimenti verrà creata una nuova biblioteca di calibre vuota." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" +"Riparazione database. Questo potrebbe richiedere molto tempo in caso di una " +"grande collezione" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" +"Posizione del database %r non valida. Verrà avviata una nuova biblioteca " +"calibre vuota." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." -msgstr "" +msgstr "Avvio di %s: Caricamento libri..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "Se siete certi che l'operzione non é in corso" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " -msgstr "Non e' possibile incominciare " +msgstr "Impossibile iniziare " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s é giá in funzione." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "potrebbe essere attivo nella barra di sistema, nel" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "la parte in alto a destra dello schermo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "la parte in basso a destra dello schermo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "Provate a far ripartire il computer." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "provate a rimuovere il documento" @@ -7403,12 +8074,14 @@ msgstr "calibre" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255 msgid "&Restrict to:" -msgstr "" +msgstr "&Limita a:" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:256 msgid "" "Books display will be restricted to those matching the selected saved search" msgstr "" +"I libri visualizzati saranno limitati a quelli corrispondenti alla ricerca " +"salvata selezionata" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:257 msgid "set in ui.py" @@ -7432,8 +8105,8 @@ msgid "" "

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

    Words separated by spaces are ANDed" msgstr "" -"

    Cerca nella lista dei libri per titolo, autore, editore, etichette, " -"commenti, etc.

    Parole separate da spazi e l'operatore AND" +"

    Cerca nella lista dei libri per titolo, autore, editore, tag, commenti, " +"etc.

    Parole separate da spazi usano l'operatore AND" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:264 msgid "Reset Quick Search" @@ -7453,7 +8126,7 @@ msgstr "Salva ricerca corrente sotto il nome indicato nella casella" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271 msgid "Delete current saved search" -msgstr "" +msgstr "Elimina ricerca salvata corrente" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:273 msgid "Add books" @@ -7482,15 +8155,15 @@ msgstr "E" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:280 msgid "Merge book records" -msgstr "" +msgstr "Unisci i record dei libri" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:281 msgid "M" -msgstr "" +msgstr "M" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:282 msgid "Send to device" -msgstr "Invia al dispositivo di lettura" +msgstr "Invia al dispositivo" #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:284 msgid "S" @@ -7576,26 +8249,27 @@ msgstr "Il Libro non ha ne titolo ne ISBN" msgid "No matches found for this book" msgstr "Nessun risultato é stato trovato per questo libro" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:86 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:249 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Cerca" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" +"La ricerca selezionata verrà definitivamente eliminata. Continuare?" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:344 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" -msgstr "Cerca (Per la ricerca avanzata fare clic sul bottone a sinistra)" +msgstr "Cerca (Per la ricerca avanzata fare clic sul pulsante di sinistra)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:371 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "Ricerche Salvate" #: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:46 msgid "({0} of {1})" -msgstr "" +msgstr "({0} di {1})" #: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:52 msgid "(all books)" @@ -7603,7 +8277,7 @@ msgstr "(tutti i libri)" #: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 msgid "({0} of all)" -msgstr "" +msgstr "({0} di tutti)" #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:58 msgid "Press a key..." @@ -7665,63 +8339,76 @@ msgstr "Svuota" msgid "&Alternate shortcut:" msgstr "Scorciatoia &alternativa" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:150 -msgid "Rename" -msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 +msgid "Rename '%s'" +msgstr "Rinomina '%s'" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 +msgid "Edit sort for '%s'" +msgstr "Modifica ordinamento per '%s'" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" -msgstr "" +msgstr "Nascondi categoria %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" -msgstr "" +msgstr "Visualizza categoria" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:162 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" -msgstr "" +msgstr "Visualizza tutte le categorie" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:169 -msgid "Manage " -msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 +msgid "Manage %s" +msgstr "Gestione %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" -msgstr "" +msgstr "Gestione ricerche salvate" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:180 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" -msgstr "" +msgstr "Gestione categorie utente" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:377 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "Ricerche" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:451 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" -msgstr "" +msgstr "Duplica parola chiave" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:452 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." -msgstr "" +msgstr "Il nome della ricerca salvata %s è già in uso." -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:652 -msgid "Sort by &popularity" -msgstr "Ordina per p&opolarità" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by name" +msgstr "Ordina per nome" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by popularity" +msgstr "Ordina per popolarità" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 +msgid "Sort by average rating" +msgstr "Ordina per valutazione media" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "Fai corrispondere tutti" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "Fai corrispondere uno qualsiasi" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:661 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" -msgstr "" +msgstr "Gestione categorie &utente" #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:182 @@ -7744,7 +8431,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:120 msgid "Queueing books for bulk conversion" -msgstr "Creazione dell'ordine dei libri per conversione in blocco" +msgstr "Creazione dell'ordine dei libri per conversione di gruppo" #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:181 msgid "Queueing " @@ -7756,7 +8443,7 @@ msgstr "Scarica notizie da " #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:299 msgid "Convert existing" -msgstr "Conversione i documenti presenti" +msgstr "Converti i documenti presenti" #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:300 msgid "" @@ -7766,461 +8453,63 @@ msgstr "" "I libri nella lista sono giá stati convertiti nel formato %s. Volete " "convertirli nuovamente?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:172 -msgid "Error communicating with device" -msgstr "Errore di comunicazione col dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:162 msgid "&Restore" msgstr "&Ripristina" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:191 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:164 msgid "&Donate to support calibre" msgstr "&donate per supportare Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:167 msgid "&Eject connected device" -msgstr "" +msgstr "&Espelli dispositivo connesso" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:172 msgid "&Restart" msgstr "&Riavvia" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:206 msgid "

    For help see the: User Manual
    " msgstr "" "

    Per maggiori informazioni e aiuto vedere il: Manuale " "d'uso
    " -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:212 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/ui.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "Guida rapida di Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:347 -msgid "Select folder to open as device" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:485 -msgid "Device: " -msgstr "Dispositivo di lettura: " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 -msgid " detected." -msgstr " individuato." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:519 -msgid "Connected " -msgstr "Connesso " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:531 -msgid "Device database corrupted" -msgstr "Database del dispositivo di lettura corrotto" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:532 -msgid "" -"\n" -"

    The database of books on the reader is corrupted. Try the " -"following:\n" -"

      \n" -"
    1. Unplug the reader. Wait for it to finish regenerating " -"the database (i.e. wait till it is ready to be used). Plug it back in. Now " -"it should work with %(app)s. If not try the next step.
    2. \n" -"
    3. Quit %(app)s. Find the file media.xml in the reader's " -"main memory. Delete it. Unplug the reader. Wait for it to regenerate the " -"file. Re-connect it and start %(app)s.
    4. \n" -"
    \n" -" " -msgstr "" -"\n" -"

    Il database dei libri nel lettore è corrotto. Prova con i " -"seguente passi:\n" -"

      \n" -"
    1. Scollega il lettore. Aspetta che abbia finito la " -"rigenerazione del database (cioè aspetta finché non è pronto per l'uso). " -"Ricollegalo. Ora dovrebbe funzionare con %(app)s, altrimenti provare il " -"passo successivo.
    2. \n" -"
    3. Chiudere %(app)s. Trovare il file media.xml nella " -"memoria principale del lettore e cancellarlo. Scollegare il lettore e " -"aspettare che rigeneri il file. Ricollegarlo e avviare %(app)s
    4. \n" -"
    \n" -" " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:595 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:772 -msgid "Use library only" -msgstr "Usare solo la biblioteca" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:596 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:773 -msgid "User annotations generated from main library only" -msgstr "Annotazioni utente generate solo dalla biblioteca principale" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:603 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1098 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1155 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1193 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1214 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1344 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1409 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1527 -msgid "No books selected" -msgstr "Nessun libro selezionato" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604 -msgid "No books selected to fetch annotations from" -msgstr "Nessun libro selezionato da cui prendere annotazioni" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:629 -msgid "Merging user annotations into database" -msgstr "Fondi le annotazioni utente nel database" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:657 -msgid "%s
    Last Page Read: %d (%d%%)" -msgstr "%s
    Ultima Pagina Letta: %d (%d%%)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:663 -msgid "%s
    Last Page Read: Location %d (%d%%)" -msgstr "%s
    Ultima Pagina Letta: Posizione %d (%d%%)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:682 -msgid "Location %d • %s
    %s
    " -msgstr "Posizione %d • %s
    %s
    " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:691 -msgid "Page %d • %s
    " -msgstr "Pagina %d • %s
    " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:696 -msgid "Location %d • %s
    " -msgstr "Posizione %d • %s
    " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:816 -msgid "How many empty books?" -msgstr "Quanti libri vuoti?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:817 -msgid "How many empty books should be added?" -msgstr "quanti libri vuoti si desidera aggiungere?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:865 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:916 -msgid "Uploading books to device." -msgstr "Invio libri al dispositivo di lettura." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:877 -msgid "EPUB Books" -msgstr "Libri EPUB" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:878 -msgid "LRF Books" -msgstr "Libri LRF" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:879 -msgid "HTML Books" -msgstr "Libri HTML" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:880 -msgid "LIT Books" -msgstr "Libri LIT" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:881 -msgid "MOBI Books" -msgstr "Libri MOBI" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:882 -msgid "Topaz books" -msgstr "Libri Topaz" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:883 -msgid "Text books" -msgstr "Libri TXT" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:884 -msgid "PDF Books" -msgstr "Libri PDF" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:885 -msgid "Comics" -msgstr "Fumetti" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:886 -msgid "Archives" -msgstr "Archivi" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:890 -msgid "Supported books" -msgstr "Libri supportati" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:925 -msgid "Merged some books" -msgstr "Uniti alcuni libri" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:926 -msgid "" -"Some duplicates were found and merged into the following existing books:" -msgstr "Alcune copie sono state trovate e unite con i seguenti libri:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:935 -msgid "Failed to read metadata" -msgstr "Non é stato possibile leggere i metadati" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:936 -msgid "Failed to read metadata from the following" -msgstr "Non é stato possibile leggere i metadati dai seguenti:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:956 -msgid "Cannot delete" -msgstr "Non si può cancellare" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:959 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1671 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1696 -msgid "No book selected" -msgstr "Nessun libro selezionato" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:969 -msgid "Choose formats to be deleted" -msgstr "Seleziona i formati da cancellare" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:987 -msgid "Choose formats not to be deleted" -msgstr "Seleziona i formati da non cancellare" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1025 -msgid "" -"The selected books will be permanently deleted and the files removed " -"from your computer. Are you sure?" -msgstr "" -"I libri selezionati saranno cancellati permanentemente e i documenti " -"rimossi dal computer. Siete sicuri?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1046 -msgid "" -"The selected books will be permanently deleted from your device. Are " -"you sure?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1061 -msgid "Deleting books from device." -msgstr "Cancellamento libri dal dispositivo di lettura." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1097 -msgid "Cannot download metadata" -msgstr "Non é possibile scaricare i metadati" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1113 -msgid "social metadata" -msgstr "metadati sociali" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1115 -msgid "covers" -msgstr "copertine" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1115 -msgid "metadata" -msgstr "metadati" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1117 -msgid "Downloading %s for %d book(s)" -msgstr "Scaricamento %s per %d libri" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1139 -msgid "Failed to download some metadata" -msgstr "Non si é riusciti a scaricare alcuni metadati" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1140 -msgid "Failed to download metadata for the following:" -msgstr "Non si é riusciti a scaricare i metadati per i seguenti:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1143 -msgid "Failed to download metadata:" -msgstr "Lo scaricamento dei metadati é fallito:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1154 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1192 -msgid "Cannot edit metadata" -msgstr "Impossibile modificare i metadati" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1213 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1216 -msgid "Cannot merge books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1217 -msgid "At least two books must be selected for merging" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1221 -msgid "" -"All book formats and metadata from the selected books will be added to the " -"first selected book.

    The second and subsequently selected " -"books will not be deleted or changed.

    Please confirm you want to " -"proceed." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1232 -msgid "" -"All book formats and metadata from the selected books will be merged into " -"the first selected book.

    After merger the second and " -"subsequently selected books will be deleted.

    All book formats " -"of the first selected book will be kept and any duplicate formats in the " -"second and subsequently selected books will be permanently deleted " -"from your computer.

    Are you sure you want to proceed?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1244 -msgid "" -"You are about to merge more than 5 books. Are you sure you want to " -"proceed?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1343 -msgid "Cannot save to disk" -msgstr "Impossibile salvare sul disco" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1346 -msgid "Choose destination directory" -msgstr "Scegliere la cartella di destinazione" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1379 -msgid "Error while saving" -msgstr "Errore durante il salvataggio" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1380 -msgid "There was an error while saving." -msgstr "Si é verificato un errore durante il salvataggio" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1388 -msgid "Could not save some books" -msgstr "Non é stato possibile salvare tutti i libri" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1389 -msgid "Click the show details button to see which ones." -msgstr "Selezionare il tasto dei dettagli per vedere quali." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1410 -msgid "No books selected to generate catalog for" -msgstr "Nessun libro selezionato per la generazione del catalogo" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1427 -msgid "Generating %s catalog..." -msgstr "Generando %s catalogo..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1433 -msgid "" -"No books to catalog\n" -"Check exclude tags" -msgstr "" -"Nessun libro da catalogare\n" -"Controlla i tag esclusi" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1443 -msgid "Catalog generated." -msgstr "Catalogo generato" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1446 -msgid "Export Catalog Directory" -msgstr "Esporta il catalogo" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1447 -msgid "Select destination for %s.%s" -msgstr "Selezionare una destinazione per %s.%s" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1461 -msgid "Fetching news from " -msgstr "Scaricamento notizie da " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1475 -msgid " fetched." -msgstr " preso." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1526 -msgid "Cannot convert" -msgstr "Impossibile convertire" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1555 -msgid "Starting conversion of %d book(s)" -msgstr "Conversione di %d libro/libri incominciata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1671 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1729 -msgid "Cannot view" -msgstr "Impossibile leggere" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1685 -msgid "Multiple Books Selected" -msgstr "Piú di un libro selezionato" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1686 -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 "" -"State tentando di aprire %d libri. Aprire molti libri allo stesso tempo puó " -"essere molto lento e causare effetti indesiderati nella responsivitá del " -"vostro computer. Una volta cominciato questa azione non puó essere fermata " -"finché il processo é completato. Siete sicuri di voler continuare?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1695 -msgid "Cannot open folder" -msgstr "Impossibile aprire la cartella" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1730 -msgid "%s has no available formats." -msgstr "%s non ha formati disponibili" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1764 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1769 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "Impossibile configurare" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "Impossibile configurare mentre ci sono lavori in esecuzione" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1770 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." -msgstr "" +msgstr "Impossibile configurare prima che calibre sia riavviato." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1817 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "Nessuna informazione dettagliata disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1818 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." -msgstr "" -"Non è disponibile alcuna informazione dettagliata per i libri nel " -"dispositivo di lettura." +msgstr "Non è disponibile alcun dettaglio per i libri nel dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1870 -msgid "Failed" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1876 -msgid "Error talking to device" -msgstr "Errore di comunicazione col dispositivo di lettura" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1877 -msgid "" -"There was a temporary error talking to the device. Please unplug and " -"reconnect the device and or reboot." -msgstr "" -"Si è verificato un errore di comunicazione temporaneo col dispositivo di " -"lettura. Disconnettere e riconnettere il dispositivo e/o riavviare" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1900 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1928 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Errore di conversione" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1901 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

    Could not convert: %s

    It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -8229,15 +8518,15 @@ msgstr "" "href=\"%s\">DRM. É necessario rimuovere la DRM usando un prodotto da " "terzi." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1914 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Ricetta deattivata" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1929 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "Operazione Fallita" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1969 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 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." @@ -8245,26 +8534,26 @@ 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/ui.py:1994 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 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/ui.py:1997 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
    \n" " Quitting may cause corruption on the device.
    \n" " Are you sure you want to quit?" msgstr "" -" sta comunicando con il dispositivo di lettura!
    \n" +" sta comunicando con il dispositivo!
    \n" " Un interruzione potrebbe causare una perdita di dati " -"sul dispositivo di lettura.
    \n" -" Siete sicuri di voler interrompere il processo?" +"sul dispositivo.
    \n" +" Interrompere l'operazione?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2001 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "ATTENZIONE: Lavori attivi" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2053 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8272,7 +8561,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/ui.py:2072 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:52 msgid "" "Latest version: %s" @@ -8280,18 +8569,18 @@ msgstr "" "Ultima versione: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2080 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:60 msgid "Update available" msgstr "Aggiornamento disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2081 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:61 msgid "" "%s has been updated to version %s. See the new features. Visit the download page?" msgstr "" -"%s é stato aggiornato alla versione %s. Vedere la pagina novitá. Seguire il " -"collegamento alla pagina di scaricamento?" +"%s é stato aggiornato alla versione %s. Consultare la pagina novitá. Collegarli alla " +"pagina di scaricamento?" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:43 msgid "Edit bookmark" @@ -8525,27 +8814,27 @@ msgstr "Vai a..." #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:467 msgid "Next Section" -msgstr "" +msgstr "Sezione successiva" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:468 msgid "Previous Section" -msgstr "" +msgstr "Sezione precedente" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:470 msgid "Document Start" -msgstr "" +msgstr "Inizio documento" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:471 msgid "Document End" -msgstr "" +msgstr "Fine documento" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:473 msgid "Section Start" -msgstr "" +msgstr "Inizio sezione" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:474 msgid "Section End" -msgstr "" +msgstr "Fine sezione" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:12 msgid "Scroll to the next page" @@ -8698,7 +8987,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:184 msgid "E-book Viewer" -msgstr "" +msgstr "Visualizzatore E-book" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:185 msgid "Close dictionary" @@ -8730,11 +9019,11 @@ msgstr "Trova successivo" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:198 msgid "Find next occurrence" -msgstr "" +msgstr "Trova occorrenza successiva" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:199 msgid "F3" -msgstr "" +msgstr "F3" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:200 msgid "Copy to clipboard" @@ -8758,29 +9047,29 @@ msgstr "Stampa" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:206 msgid "Find previous" -msgstr "" +msgstr "Trova precedente" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:207 msgid "Find previous occurrence" -msgstr "" +msgstr "Trova occorrenza precedente" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:208 msgid "Shift+F3" -msgstr "" +msgstr "Shift+F3" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/printing.py:114 msgid "Print eBook" msgstr "Stampa del libro elettronico" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "Copia immagine" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "Incolla immagine" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -8790,7 +9079,7 @@ msgstr "" "%d\n" "libri" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" @@ -8800,7 +9089,7 @@ msgstr "" "%s\n" "disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" @@ -8810,7 +9099,7 @@ msgstr "" "%s\n" "disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" @@ -8820,63 +9109,63 @@ msgstr "" "%s\n" "disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "Seleziona per vedere i libri disponibili sul vostro computer" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -"Seleziona per vedere i libri disponibili sulla memoria principale del vostro " -"dispositivo di lettura" +"Fare clic per vedere i libri disponibili sulla memoria principale del " +"dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -"Seleziona per vedere i libri disponibili sulla scheda di memoria A nel " -"vostro dispositivo di lettura" +"Fare clic per vedere i libri disponibili sulla scheda di memoria A del " +"dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -"Seleziona per vedere i libri disponibili sulla scheda di memoria B nel " -"vostro dispositivo di lettura" +"Fare clic per vedere i libri disponibili sulla scheda di memoria B del " +"dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" -msgstr "" +msgstr "Libri presenti in" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "Modificare capitalizzazioned dei caratteri" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "Maiuscole" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "Minuscole" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "Inverti capitalizzazione dei caratteri" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "Caratteri per titolo" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" -msgstr "" +msgstr "Trasinare per ridimensionare" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" -msgstr "" +msgstr "Visualizza" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" -msgstr "" +msgstr "Nascondi" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:367 msgid "" @@ -8884,10 +9173,9 @@ msgid "" "your calibre book collection directly on the device. To do this you have to " "turn on the content server." msgstr "" -"Se usate il l'applicazione WordPlayer sul vostro dispositivo Android, é " -"possibile accedere alla vostra collezione di libri elettronici direttamente " -"dal vostro dispositivo di lettura. Per fare questo é necessario attivare il " -"server di contenuti." +"Se viene usata l'applicazione WordPlayer su un dispositivo Android, é " +"possibile accedere alla collezione di libri direttamente dal dispositivo. " +"Per fare questo é necessario attivare il server di contenuti." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:371 msgid "" @@ -8903,18 +9191,18 @@ msgid "" "WordPlayer. Here myhostname should be the fully qualified hostname or the IP " "address of the computer calibre is running on." msgstr "" -"É necessario aggiungere l'indirizzo URL http://myhostname:8080 come libreria " -"di Calibre per WordPlayer. n uesto caso myhostname é da intendersi come il " -"valore IP appropriato del computer su cui Calibre é attivo." +"É necessario aggiungere l'indirizzo URL http://myhostname:8080 come " +"biblioteca di calibre per WordPlayer. In questo caso myhostname deve essere " +"un host valido o l'indirizzo IP del computer su cui calibre é avviato." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:450 msgid "Moving library..." -msgstr "Spostamento della libreria in corso..." +msgstr "Spostamento della biblioteca in corso..." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:466 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:467 msgid "Failed to move library" -msgstr "Non ´stato possibile muovere la libreria" +msgstr "Impossibile spostare la biblioteca" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:521 msgid "Invalid database" @@ -8925,12 +9213,12 @@ msgid "" "

    An invalid library already exists at %s, delete it before trying to move " "the existing library.
    Error: %s" msgstr "" -"

    Una libreria non valida esiste giá in %s, Cancellate il documento prima " -"di tentare di muovere la libreria esistente.
    Errore: %s" +"

    Una biblioteca non valida esiste giá in %s, eliminarla prima di tentare " +"di spostare la biblioteca esistente.
    Errore: %s" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:533 msgid "Could not move library" -msgstr "Non é possibile spostare la libreria" +msgstr "Impossibile spostare la biblioteca" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:662 msgid "welcome wizard" @@ -8952,16 +9240,15 @@ msgstr "Benvenuti in Calibre" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:43 msgid "The one stop solution to all your e-book needs." msgstr "" -"La soluzione unica per tutte le vostre necessitá in libri elettronici" +"La soluzione unica per tutte le vostre necessitá di libri elettronici" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:51 msgid "" "Choose your book reader. This will set the conversion options to produce " "books optimized for your device." msgstr "" -"Selezionare il vostro dispositivo di lettura. Questo consentirá di " -"personalizzare le opzioni di conversione ottimizzate per il vostro " -"dispositivo." +"Selezionare il lettore di ebook. Questo consentirá di impostare le opzioni " +"di conversione ottimizzate per il lettore." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:52 msgid "&Manufacturers" @@ -8976,15 +9263,15 @@ msgid "" "

    Congratulations!

    You have successfully setup calibre. Press the %s " "button to apply your settings." msgstr "" -"

    Congratulazioni!

    Avete installato con successo Calibre. Premete il " -"tasto %s per aggiornare le vostre opzioni." +"

    Congratulazioni!

    Calibre è stato installato con successo. Fare clic " +"sul pulsante %s per applicare le impostazioni." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:49 msgid "" "

    Demo videos

    Videos demonstrating the various features of calibre are " "available online." msgstr "" -"

    Videoguide

    Le videoguide ti permettono di vedere le varie " +"

    Videoguide

    Le videoguide permettono di vedere le varie " "caratteristiche del programma online." @@ -9016,15 +9303,15 @@ msgstr "&kindle posta elettronica:" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:52 msgid "Choose your &language:" -msgstr "Selezionate il vostro &language:" +msgstr "Selezionare la &lingua:" #: /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 "" -"Selezionate una destinazione per i vostri libri. Quando si aggiungono libri " -"a Calibre, questi saranno copiati qui:" +"Selezionare una destinazione per i libri. Quando verranno aggiunti libri a " +"Calibre, questi saranno copiati qui:" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:54 msgid "&Change" @@ -9036,9 +9323,9 @@ msgid "" "location. If a calibre library already exists at the new location, calibre " "will switch to using it." msgstr "" -"Se avete una libreria di Calibre, questa sará copiata nella nuova " -"destinazione. Se una libreria di Calibre esiste nella nuova destinazione, " -"Calibre la adopererá automaticamente." +"Se esiste già una biblioteca di Calibre, questa verrà copiata nella nuova " +"posizione. Se una biblioteca di Calibre esiste nella nuova posizione, " +"calibre utilizzerà quest'ultima." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:32 msgid "Using: %s:%s@%s:%s and %s encryption" @@ -9054,7 +9341,7 @@ msgstr "Messaggio inviato con successo" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:114 msgid "Finish gmail setup" -msgstr "Finallizare le opzioni per Gmail" +msgstr "Configurazione di gmail completata" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:115 msgid "" @@ -9141,7 +9428,7 @@ msgstr "La vostra password sul server per la posta" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:121 msgid "&Show" -msgstr "&Show" +msgstr "&Mostra" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:122 msgid "&Encryption:" @@ -9181,60 +9468,59 @@ msgid "" "directly on the device. To do this you have to turn on the calibre content " "server." msgstr "" -"

    Se usate l'applicazione Stanza come programma di " -"lettura per libri elettronici sul vostro iPhone/iTouch, potete accedere alla " -"vostra collezione di libri elettronici direttamente dal dispositivo di " -"lettura. Per fare questo é necessario attivare il server di contenuti." +"

    Se viene usata la app Stanza su iPhone/iTouch, è " +"possibile accedere alla collezione di libri direttamente dal dispositivo. " +"Per fare questo é necessario attivare il server di contenuti." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:45 msgid "Turn on the &content server" msgstr "Attivare in server di &content" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:270 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" -msgstr "" +msgstr "oggi" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:273 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" -msgstr "" +msgstr "ieri" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:276 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" -msgstr "" +msgstr "questomese" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:279 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:280 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" -msgstr "" +msgstr "giornifa" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:430 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:440 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" -msgstr "" +msgstr "no" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:430 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:440 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" -msgstr "" +msgstr "non selezionato" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:433 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:443 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" -msgstr "" +msgstr "selezionato" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:433 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:443 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" -msgstr "" +msgstr "sì" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:437 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" -msgstr "" +msgstr "vuota" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:437 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" -msgstr "" +msgstr "vuoto" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:41 msgid "" @@ -9247,8 +9533,8 @@ msgstr "" "I campi da includere nel catalogo di libri nel database. Questi devono " "essere campi separati da virgole\n" "Campi disponibili: %s.\n" -"Valori predefiniti: '%%default'\n" -"Applicabile per i formati di output: CSV, XML" +"Valore predefinito: '%%default'\n" +"Applicabile ai formati di output: CSV, XML" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:51 msgid "" @@ -9259,8 +9545,8 @@ msgid "" msgstr "" "Campi di output per l'ordinamento.\n" "Campi disponibili: author_sort, id, rating, size, timestamp, title.\n" -"Campi di default: '%default'\n" -"Si applica a: CSV, XML formati di output" +"Valore predefinito: '%default'\n" +"Applicabile ai formati di output: CSV, XML" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:202 msgid "" @@ -9292,8 +9578,8 @@ msgid "" "Default: '%default' excludes bracketed tags, e.g. '[]'\n" "Applies to: ePub, MOBI output formats" msgstr "" -"Stringa regex per escludere etichette che definiscono i generi\n" -"Valore predefinito: '%default' che esclude etichette con parantesi, e.g. " +"Espressione regolare per descrivere i tag come generi.\n" +"Valore predefinito: '%default' che esclude i tag con parentesi, ad esempio " "'[]'\n" "Applicabile ai formati di output: ePub, MOBI" @@ -9306,9 +9592,9 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" "Lista di etichette separate da virgole per indicare quali libri devono " -"essere esclusi dall'output. Si noti che le maiuscole sono ignorate\n" -"--exclude-tags=ignorare troverá risultati nelle frasi 'ignorare this book' " -"and 'Ignorare will like this'\n" +"essere esclusi dall'output. Si noti che le maiuscole sono ignorate.\n" +"--exclude-tags=ignorare troverá risultati nelle frasi 'ignorare questo " +"libro' e 'Ignorare sarà come questo'\n" "Valore predefinito: '%default'\n" "Applicabile ai formati di output: ePub, MOBI" @@ -9319,8 +9605,8 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" "Includi la sezione 'Titoli' nel catalogo.\n" -"Default: '%default'\n" -"Applica a: formati di output epub, MOBI" +"Valore predefinito: '%default'\n" +"Applicabile ai formati di output: epub, MOBI" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:240 msgid "" @@ -9329,8 +9615,8 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" "Includi la sezione 'Ultimi Aggiunti' nel catalogo.\n" -"Default: '%default'\n" -"Applica a: formati di output epub, MOBI" +"Valore predefinito: '%default'\n" +"Applicabile ai formati di output: ePub, MOBI" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:247 msgid "" @@ -9338,8 +9624,8 @@ msgid "" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -"Prefissi di etichette per le vostre annotazioni, e.g. '*questo libro " -"piacerebbe a Giovanni' \n" +"Prefissi dei tag per le annotazioni, ad esempio '*questo libro piacerebbe a " +"Giovanni' .\n" "Valore predefinito: '%default'\n" "Applicabile ai formati di output: ePub, MOBI" @@ -9352,8 +9638,8 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" "Ordina i titoli con numeri iniziali come testo, e.g.\n" -"'2001: Un'odissea nello spazio' viene elencato come\n" -"'Duemilauno: Un'odissea nello spazio'.\n" +"'2001: Odissea nello spazio' viene ordinato come\n" +"'Duemilauno: Odissea nello spazio'.\n" "Valore predefinito: '%default'\n" "Applicabile ai formati di output: ePub, MOBI" @@ -9368,7 +9654,7 @@ msgid "" msgstr "" "Specifica un profilo di output. In alcuni casi un profilo di output é " "necessario per ottimizzare il catalogo per alcuni dispositivi. Per esempio, " -"i dispositivi Kindle e Kindle dx creano indici organizzati con sezioni e " +"i dispositivi Kindle e Kindle dx creano un indice organizzato in sezioni e " "articoli.\n" "Valore predefinito: '%default'\n" "Applicabile ai formati di output: ePub, MOBI" @@ -9379,9 +9665,9 @@ msgid "" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -"Etichetta per indicare che il libro é stato letto\n" +"Tag per indicare che il libro è stato letto.\n" "Valore predefinito: '%default'\n" -"Applicabile per i formati di output: ePub, MOBI" +"Applicabile ai formati di output: ePub, MOBI" #: /home/kovid/work/calibre/src/calibre/library/cli.py:41 msgid "" @@ -9510,19 +9796,19 @@ msgstr "Aggiunge libri al database anche se esistono già." #: /home/kovid/work/calibre/src/calibre/library/cli.py:282 msgid "Add an empty book (a book with no formats)" -msgstr "" +msgstr "Aggiungi un libro vuoto (un libro senza formati)" #: /home/kovid/work/calibre/src/calibre/library/cli.py:284 msgid "Set the title of the added empty book" -msgstr "" +msgstr "Imposta il titolo del libro vuoto aggiunto" #: /home/kovid/work/calibre/src/calibre/library/cli.py:286 msgid "Set the authors of the added empty book" -msgstr "" +msgstr "Imposta gli autori del libro vuoto aggiunto" #: /home/kovid/work/calibre/src/calibre/library/cli.py:288 msgid "Set the ISBN of the added empty book" -msgstr "" +msgstr "Imposta l'ISBN del libro vuoto aggiunto" #: /home/kovid/work/calibre/src/calibre/library/cli.py:313 msgid "You must specify at least one file to add" @@ -9607,7 +9893,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/cli.py:434 msgid "Print metadata in OPF form (XML)" -msgstr "Stampa i metafati in formato OPF (XML)" +msgstr "Stampa i metadati in formato OPF (XML)" #: /home/kovid/work/calibre/src/calibre/library/cli.py:443 msgid "You must specify an id" @@ -9687,22 +9973,33 @@ msgid "" "column.\n" "datatype is one of: {0}\n" msgstr "" +"%prog add_custom_column [opzioni] etichetta nome tipo\n" +"\n" +"Crea una colonna personalizzata. etichetta è il nome amichevole della " +"macchina della colonna. Non\n" +"deve contentere spazi o punteggiatura. nome è il nome amichevole umano della " +"colonna.\n" +"tipo è uno di: {0}\n" #: /home/kovid/work/calibre/src/calibre/library/cli.py:556 msgid "" "This column stores tag like data (i.e. multiple comma separated values). " "Only applies if datatype is text." msgstr "" +"Questa colonna salva i tag come dati (es. valori separati da virgole). " +"Applicato solo se il tipo di dato è testo." #: /home/kovid/work/calibre/src/calibre/library/cli.py:560 msgid "" "A dictionary of options to customize how the data in this column will be " "interpreted." msgstr "" +"Un dizionario di opzioni per personalizzare come i dati in questa colonna " +"verranno interpretati." #: /home/kovid/work/calibre/src/calibre/library/cli.py:573 msgid "You must specify label, name and datatype" -msgstr "" +msgstr "Specificare etichetta, nome e tipo di dato" #: /home/kovid/work/calibre/src/calibre/library/cli.py:631 msgid "" @@ -9745,7 +10042,7 @@ msgstr "" "Default: nessun filtraggio" #: /home/kovid/work/calibre/src/calibre/library/cli.py:655 -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:503 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:505 msgid "Show detailed output information. Useful for debugging" msgstr "Mostra un output dettagliato. Utile per il debugging" @@ -9753,7 +10050,7 @@ msgstr "Mostra un output dettagliato. Utile per il debugging" msgid "Error: You must specify a catalog output file" msgstr "Errore: devi specificate un file di output del catalogo" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -9764,18 +10061,29 @@ msgid "" " command.\n" " " msgstr "" +"\n" +" %prog set_custom [opzioni] colonna id valore\n" +"\n" +" Imposta il valore di una colonna personalizzata per il libro " +"identificato da id.\n" +" Per ottenere una lista di id usare il comando list.\n" +" Per ottenere una lista dei nomi delle colonne usare il comando " +"custom_columns.\n" +" " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" +"Se la colonna salva più valori, aggiunge i valori specificati a quelli " +"esistenti, altrimenti li sostituisce." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" -msgstr "" +msgstr "Errore: Specificare nome del campo, id e valore" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -9783,20 +10091,26 @@ msgid "" " List available custom columns. Shows column labels and ids.\n" " " msgstr "" +"\n" +" %prog custom_columns [opzioni]\n" +"\n" +" Mostra le colonne personalizzate disponibili. Mostra le etichette della " +"colonna e gli id.\n" +" " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." -msgstr "" +msgstr "Mostra i dettagli per ogni colonna" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " -msgstr "" +msgstr "Verranno persi i dati nella colonna: %r. Continuare (y/n)? " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" -msgstr "" +msgstr "y" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -9805,16 +10119,23 @@ msgid "" " columns with the custom_columns command.\n" " " msgstr "" +"\n" +" %prog remove_custom_column [opzioni] etichetta\n" +"\n" +" Rimuove la colonna personalizzata identificata dall'etichetta. Per " +"visualizzare le\n" +" colonne disponibili utilizzare il comando custom_columns.\n" +" " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" -msgstr "" +msgstr "Non chiedere conferma" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" -msgstr "" +msgstr "Errore: Specificare un etichetta per la colonna" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9834,46 +10155,50 @@ msgstr "" "\n" "Per aiuto su un comando particolare: %%prog command --help\n" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:487 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:70 +msgid "%sAverage rating is %3.1f" +msgstr "%sLa valutazione media è %3.1f" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" -msgstr "" +msgstr "Principale" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:489 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" -msgstr "" +msgstr "Scheda A" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:491 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" -msgstr "" +msgstr "Scheda B" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1665 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

    Migrating old database to ebook library in %s

    " msgstr "" -"

    Sto migrando il vecchio database nella nuova biblioteca in %s

    " +"

    Migrazione del vecchio database nella biblioteca in %s

    " -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1694 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "Sto copiando %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1711 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "Compattazione database" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1804 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." -msgstr "Controllo di integrita' SQL..." +msgstr "Controllo di integrità SQL..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1845 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "Controllo per file mancanti" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1867 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "ID controllate" -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:111 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:118 msgid "Ratings" -msgstr "" +msgstr "Valutazioni" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:24 msgid "The title" @@ -9893,7 +10218,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:28 msgid "The tags" -msgstr "Le etichette" +msgstr "I tag" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:29 msgid "The series" @@ -9904,6 +10229,8 @@ msgid "" "The series number. To get leading zeros use {series_index:0>3s} or " "{series_index:>3s} for leading spaces" msgstr "" +"Il numero di serie. Per ottenere gli zeri iniziali usare {series_index:0>3s} " +"o {series_index:>3s} per gli spazi iniziali" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:33 msgid "The rating" @@ -9938,8 +10265,8 @@ msgid "" "Normally, calibre will update the metadata in the saved files from what is " "in the calibre library. Makes saving to disk slower." msgstr "" -"Normalmente Calibre aggiornerá i metadati nei documenti salvati da quanto si " -"trova nella libreria di Calibre. Ció rende il salvataggio piú lento." +"Normalmente Calibre aggiornerá i metadati nei file salvati da quanto si " +"trova nella biblioteca di Calibre. Ció rende il salvataggio piú lento." #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:57 msgid "" @@ -9984,10 +10311,10 @@ msgid "" "directory with filenames containing title and author. Available controls " "are: {%s}" msgstr "" -"Il modello per configurare la struttura del nome delle cartelle e dei " -"documenti inviati al dispositivo di lettura. Il valore predefinito e' \"%s\" " -"che utilizza una struttura di cartelle per autore e nomi dei documenti " -"contententi il titolo e l'autore. Altre opzioni disponibili sono: {%s}" +"Il modello per gestire la struttura delle cartelle e dei nomi dei file " +"inviati al dispositivo. Il valore predefinito è \"%s\" che salva i libri in " +"directory divise per autore con i nomi dei file contententi il titolo e " +"l'autore. Altre opzioni disponibili sono: {%s}" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:78 msgid "" @@ -10011,7 +10338,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:87 msgid "Convert paths to lowercase." -msgstr "Conversione dei percorsi in letttere minuscole." +msgstr "Converti i percorsi in lettere minuscole." #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:89 msgid "Replace whitespace with underscores." @@ -10041,8 +10368,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:31 msgid "Set a password to restrict access. By default access is unrestricted." msgstr "" -"Imposta una password per restringere l'accesso. Come impostazione " -"predefinita l'accesso non è ristretto." +"Imposta una password per limitare l'accesso. Come impostazione predefinita " +"l'accesso non è limitato." #: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:33 msgid "Username for access. By default, it is: %default" @@ -10051,7 +10378,7 @@ msgstr "Nome utente per l'accesso. Predefinito: %default" #: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:37 msgid "The maximum size for displayed covers. Default is %default." msgstr "" -"La dimensione massima per le copertine visualizzate. Il valore predefinito é " +"La dimensione massima per le copertine visualizzate. Il valore predefinito è " "%default." #: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:39 @@ -10068,6 +10395,9 @@ msgid "" "more than this number of items. Default: %default. Set to a large number to " "disable grouping." msgstr "" +"Raggruppa gli elementi per categorie come autore/tag per la prima lettera " +"quando ci sono più di questo numero di elementi. Predefinito: %default. " +"Impostare un numero grande per disattivare il raggruppamento." #: /home/kovid/work/calibre/src/calibre/library/server/base.py:93 msgid "Password to access your calibre library. Username is " @@ -10087,52 +10417,52 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/main.py:30 msgid "Path to the library folder to serve with the content server" msgstr "" -"Percorso per la cartella da cui la libreria e' disponibile per il server di " -"contenuti" +"Percorso per la cartella da cui la biblioteca e' disponibile per il server " +"di contenuti" #: /home/kovid/work/calibre/src/calibre/library/server/main.py:32 msgid "Write process PID to the specified file" msgstr "Scrivere PID per il file specificato" -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:112 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:108 msgid "%d books" -msgstr "" +msgstr "%d libri" -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:124 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:127 msgid "%d items" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:141 -msgid "RATING: %s
    " -msgstr "" +msgstr "%d elementi" #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:144 +msgid "RATING: %s
    " +msgstr "VALUTAZIONE: %s
    " + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:147 msgid "TAGS: %s
    " -msgstr "" +msgstr "TAG: %s
    " -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:148 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:151 msgid "SERIES: %s [%s]
    " -msgstr "" +msgstr "SERIE: %s [%s]
    " -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:189 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:192 msgid "Library" -msgstr "" +msgstr "Biblioteca" -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:231 msgid "Books in your library" -msgstr "" +msgstr "Libri nella biblioteca" -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:234 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:237 msgid "By " -msgstr "" +msgstr "Di " -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:235 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:238 msgid "Books sorted by " -msgstr "" +msgstr "Libri ordinati per " -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:535 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Newest" -msgstr "" +msgstr "Più recenti" #: /home/kovid/work/calibre/src/calibre/utils/config.py:48 msgid "%sUsage%s: %s\n" @@ -10176,7 +10506,7 @@ msgstr "La lingua in cui visualizzare l'interfaccia utente" #: /home/kovid/work/calibre/src/calibre/utils/config.py:682 msgid "The default output format for ebook conversions." -msgstr "Il formato predefinito per la conversione dei libri." +msgstr "Formato predefinito per la conversione dei libri." #: /home/kovid/work/calibre/src/calibre/utils/config.py:686 msgid "Ordered list of formats to prefer for input." @@ -10192,7 +10522,7 @@ msgstr "La priorità dei processi di lavoro" #: /home/kovid/work/calibre/src/calibre/utils/config.py:692 msgid "Swap author first and last names when reading metadata" -msgstr "Inverti nome e Cognome dell'autore durante la lettura dei metadata" +msgstr "Inverti nome e Cognome dell'autore durante la lettura dei metadati" #: /home/kovid/work/calibre/src/calibre/utils/config.py:694 msgid "Add new formats to existing book records" @@ -10206,6 +10536,12 @@ msgstr "Elenco delle ricerche salvate" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" +"Conserva tutte le collezioni anche se non presenti nei metadati della " +"biblioteca." + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "In attesa..." @@ -10275,34 +10611,38 @@ msgid "English (Pakistan)" msgstr "Inglese (Pakistan)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 +msgid "English (Israel)" +msgstr "English (Israel)" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 msgid "English (Singapore)" msgstr "Inglese (Singapore)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 msgid "English (Yemen)" msgstr "Inglese (Yemen)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:109 msgid "English (Ireland)" msgstr "English (Ireland)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:109 -msgid "English (China)" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/utils/localization.py:110 -msgid "Spanish (Paraguay)" -msgstr "" +msgid "English (China)" +msgstr "English (China)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:111 +msgid "Spanish (Paraguay)" +msgstr "Spanish (Paraguay)" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112 msgid "German (AT)" msgstr "Tedesco (AT)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:113 msgid "Dutch (NL)" msgstr "Olandese (Olanda)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:113 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114 msgid "Dutch (BE)" msgstr "Olandese (Belgio)" @@ -10371,89 +10711,89 @@ msgstr "" msgid "Unknown News Source" msgstr "Sorgente di notizie sconosciuta" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:605 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "La ricetta \"%s\" richiede un nome utente e password." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:702 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Scaricamento completato" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:704 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "Scaricamento dei seguenti articoli fallito:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:710 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "Scaricamento dei seguenti articoli fallito parzialmente:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:712 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " da " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "\tLink falliti:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:831 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" "Non é stato possibile ottnere l'articolo. Provare a eseguire con l'opzione -" "vv per maggiori informazioni sulla ragione." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:852 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "Scaricamento feed..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:857 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "Ricevuti feed dalla pagina principale" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:863 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Tentativo di scaricamento della copertina..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:865 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "Preparazione dell'immagine principale in corso" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:946 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "Inizio scaricamento [%d articolo(i)]..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:962 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Feed scaricati in %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:972 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "Impossibile scaricare la copertina: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:984 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Scaricamento copertina da %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1024 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "Immagine principale scaricata" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1220 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Articolo senza titolo" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1291 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Articolo scaricato: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1302 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "Scaricamento fallito dell'articolo: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1319 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "Scaricamento feed" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1466 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." @@ -10461,7 +10801,7 @@ msgstr "" "Impossibile accedere, controllare il nome utente e password per il servizio " "Periodici di calibre." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1482 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -10475,16 +10815,16 @@ msgstr "Tu" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Pianificato" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "Personalizzato" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:480 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:482 msgid "" "%prog URL\n" "\n" @@ -10494,11 +10834,11 @@ msgstr "" "\n" "Dov'è l'URL. Esempio: http://google.com" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:483 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:485 msgid "Base directory into which URL is saved. Default is %default" msgstr "Cartella base in cui le URL sono salvate. Predefinita: %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:486 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:488 msgid "" "Timeout in seconds to wait for a response from the server. Default: %default " "s" @@ -10506,7 +10846,7 @@ msgstr "" "Timeout in secondi da aspettare per una risposta dal server. Predefinito: " "%default s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:489 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:491 msgid "" "Maximum number of levels to recurse i.e. depth of links to follow. Default " "%default" @@ -10514,15 +10854,15 @@ msgstr "" "Numero massimo di livelli ricorsivi, cioè profondità dei link da seguire. " "Predefinito: %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:492 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494 msgid "" "The maximum number of files to download. This only applies to files from tags. Default is %default" msgstr "" -"Il numero massimo di file da scaricare. Questa si applica solo ai file dai " -"tag . Predefinito: %default" +"Il numero massimo di file da scaricare. Questo si applica solo ai file con " +"tag . Il valore predefinito è %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:496 msgid "" "Minimum interval in seconds between consecutive fetches. Default is %default " "s" @@ -10530,7 +10870,7 @@ msgstr "" "Intervallo minimo in secondi tra due scaricamenti consecutivi. Predefinito: " "%default s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:496 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:498 msgid "" "The character encoding for the websites you are trying to download. The " "default is to try and guess the encoding." @@ -10538,7 +10878,7 @@ msgstr "" "La codifica caratteri del sito web che si sta cercando di scaricare. " "L'impostazione predefinita è quella di provare a indovinare la codifica" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:498 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:500 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 " @@ -10549,7 +10889,7 @@ msgstr "" "un link corrisponde a una delle espressioni regolari verrà seguito. Per " "impostazione predefinita i link non vengono seguiti" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:500 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:502 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 " @@ -10564,7 +10904,7 @@ msgstr "" "sia --filter-regexp che --match-regexp, --filter-regexp viene applicata per " "prima" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:502 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:504 msgid "Do not download CSS stylesheets." msgstr "Non scaricare i fogli di stile CSS" @@ -10899,6 +11239,18 @@ msgstr "Non scaricare i fogli di stile CSS" #~ msgid "Usage:" #~ msgstr "Uso:" +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [opzioni] ISBN\n" +#~ "\n" +#~ "Scarica un'immagine di copertina per il libro identificato dall'ISBN da " +#~ "LibraryThing.com\n" + #~ msgid "Usage: %s file.lit" #~ msgstr "Uso: %s file.lit" @@ -11113,6 +11465,34 @@ msgstr "Non scaricare i fogli di stile CSS" #~ msgid "Send to storage card" #~ msgstr "Invia alla scheda di memoria" +#~ msgid "" +#~ "\n" +#~ "

    The database of books on the reader is corrupted. Try the " +#~ "following:\n" +#~ "

      \n" +#~ "
    1. Unplug the reader. Wait for it to finish regenerating " +#~ "the database (i.e. wait till it is ready to be used). Plug it back in. Now " +#~ "it should work with %(app)s. If not try the next step.
    2. \n" +#~ "
    3. Quit %(app)s. Find the file media.xml in the reader's " +#~ "main memory. Delete it. Unplug the reader. Wait for it to regenerate the " +#~ "file. Re-connect it and start %(app)s.
    4. \n" +#~ "
    \n" +#~ " " +#~ msgstr "" +#~ "\n" +#~ "

    Il database dei libri nel lettore è corrotto. Prova con i " +#~ "seguente passi:\n" +#~ "

      \n" +#~ "
    1. Scollega il lettore. Aspetta che abbia finito la " +#~ "rigenerazione del database (cioè aspetta finché non è pronto per l'uso). " +#~ "Ricollegalo. Ora dovrebbe funzionare con %(app)s, altrimenti provare il " +#~ "passo successivo.
    2. \n" +#~ "
    3. Chiudere %(app)s. Trovare il file media.xml nella " +#~ "memoria principale del lettore e cancellarlo. Scollegare il lettore e " +#~ "aspettare che rigeneri il file. Ricollegarlo e avviare %(app)s
    4. \n" +#~ "
    \n" +#~ " " + #~ msgid "" #~ "

    Books with the same title as the following already exist in the database. " #~ "Add them anyway?

      " @@ -11784,6 +12164,9 @@ msgstr "Non scaricare i fogli di stile CSS" #~ msgid "The output directory. Defaults to the current directory." #~ msgstr "La cartella di uscita. La cartella predefinita è quella corrente." +#~ msgid "Sort tags list by popularity" +#~ msgstr "Ordina la lista dei tag per popolarità" + #~ msgid "Read &metadata from files" #~ msgstr "Leggi &metadati dai file" @@ -11810,6 +12193,9 @@ msgstr "Non scaricare i fogli di stile CSS" #~ msgid "Level &2 TOC" #~ msgstr "Livello &2 sommario" +#~ msgid "Sort by &popularity" +#~ msgstr "Ordina per p&opolarità" + #~ msgid "Options to control the traversal of HTML" #~ msgstr "Opzioni per controllare l'analisi completa dell'HTML" @@ -12135,6 +12521,9 @@ msgstr "Non scaricare i fogli di stile CSS" #~ "Calibre puó mandare i vostri libri a voi (o i vostri lettori) con posta " #~ "elettronica." +#~ msgid "Device database corrupted" +#~ msgstr "Database del dispositivo di lettura corrotto" + #~ msgid "Invalid library location" #~ msgstr "Percorso della libreria invalido" @@ -12207,6 +12596,24 @@ msgstr "Non scaricare i fogli di stile CSS" #~ msgid "&Transliterate unicode characters to ASCII." #~ msgstr "&Converti da caratteri unicode a ASCII." +#~ msgid "" +#~ "If an existing book with a similar title and author is found that does not " +#~ "have the format being added, the format is added \n" +#~ "to the existing book, instead of creating a new entry. If the existing book " +#~ "already has the format, then it is silently ignored.\n" +#~ "\n" +#~ "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " +#~ "punctuation, case, etc. Author match is exact." +#~ msgstr "" +#~ "Se esiste già un libro con simile titolo e autore,ma che non ha lo stesso " +#~ "formato di quello che viene aggiunto, il formato è aggiunto \n" +#~ "al libro esistente, invece di creare una nuova voce. Se il libro ha già lo " +#~ "stesso formato, allora viene ignorato.\n" +#~ "\n" +#~ "Corrispondenza Titolo ignora i primi articoli indefiniti (\"il\", \"a\", " +#~ "\"una\"), la punteggiatura, maiuscole, ecc. Corrispondenza Autore fa lo " +#~ "stesso." + #~ msgid "(%d found)" #~ msgstr "(%d trovato)" @@ -12221,3 +12628,21 @@ msgstr "Non scaricare i fogli di stile CSS" #~ msgid "original" #~ msgstr "originale" + +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Comunica con iBooks attraverso iTunes." + +#~ msgid "Downloads series information from librarything.com" +#~ msgstr "Scarica informazioni sulla serie da librarything.com" + +#~ msgid "Disconnect from folder" +#~ msgstr "Disconnetti dalla cartella" + +#~ msgid "Item already used" +#~ msgstr "Elemento già usato" + +#~ msgid "The item %s is already used." +#~ msgstr "L'elemento %s è già stato usato." + +#~ msgid "Connect to iTunes (EXPERIMENTAL)" +#~ msgstr "Connetti ad iTunes (SPERIMENTALE)" diff --git a/src/calibre/translations/lv.po b/src/calibre/translations/lv.po index 73d9480db7..90a80ab5b2 100644 --- a/src/calibre/translations/lv.po +++ b/src/calibre/translations/lv.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-06-18 17:57+0000\n" -"PO-Revision-Date: 2010-06-18 17:28+0000\n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-02 18:19+0000\n" "Last-Translator: Kovid Goyal \n" "Language-Team: Latvian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-19 03:48+0000\n" +"X-Launchpad-Export-Date: 2010-07-03 03:45+0000\n" "X-Generator: Launchpad (build Unknown)\n" "X-Poedit-Country: LATVIA\n" "X-Poedit-Language: Latvian\n" @@ -29,28 +29,29 @@ msgstr "Pilnīgi neko nedara" #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:432 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:385 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 @@ -73,9 +74,9 @@ msgstr "Pilnīgi neko nedara" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:908 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:913 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:979 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -103,49 +104,49 @@ msgstr "Pilnīgi neko nedara" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:288 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:809 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:812 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:492 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:351 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:861 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 #: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:342 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:916 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1586 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1588 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1710 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 #: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 -#: /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/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -178,7 +179,7 @@ msgid "" "library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -186,56 +187,56 @@ msgstr "" "Rakstzīmju kodējums avota HTML failiem. Bieži vien tiek izmantots: cp1252, " "latin1, iso-8859-1 un utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " "file to the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Izvilkt vāku no komiksu failiem" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Lasīt metadatus no %s failiem" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Lasīt metadatus no e-grāmatām RAR arhīvos" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Lasīt metadatus no e-grāmatām ZIP arhīvos" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Ierakstīti metadati %s failos" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "" @@ -272,7 +273,7 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:266 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -282,100 +283,100 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Šis profils ir paredzēts Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:342 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Šis profils ir paredzēts Mobipocket grāmatām" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:355 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Šis profils ir paredzēts Hanlin V3 un tā atdarinājumiem." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Šis profils ir paredzēts Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:388 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Šis profils ir paredzēts Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:399 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Šis profils ir paredzēts Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:434 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Šis profils ir paredzēts Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Šis profils ir paredzēts IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:461 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:475 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Izvadprofils" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " "devices." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:254 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:279 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:319 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:417 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Šis profils ir paredzēts Amazon Kindle DX." @@ -445,76 +446,81 @@ msgstr "" msgid "Communicate with Android phones." msgstr "Komunicē ar Android telefoniem." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:78 -msgid "Communicate with iBooks through iTunes." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:84 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:227 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:230 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:301 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:338 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:842 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:876 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:345 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:881 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:519 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:742 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 -msgid "settings for device drivers" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:744 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 -msgid "Ordered list of formats the device will accept" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2168 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:810 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:816 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:844 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 #: /home/kovid/work/calibre/src/calibre/library/database2.py:167 #: /home/kovid/work/calibre/src/calibre/library/database2.py:180 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1470 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 msgid "News" msgstr "Ziņas" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "" @@ -537,7 +543,11 @@ msgstr "" msgid "Communicate with the EB600 eBook reader." msgstr "Komunicē arEB600 e-grāmatu lasītāju" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:207 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 msgid "Communicate with the PocketBook 301 reader." msgstr "" @@ -643,10 +653,44 @@ msgstr "Komunicē ar Kindle 2 e-grāmatu lasītāju." msgid "Communicate with the Kindle DX eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:14 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 msgid "Communicate with the Kobo Reader" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Dzēš grāmatas no ierīces..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "" @@ -655,6 +699,10 @@ msgstr "" msgid "Communicate with the Booq Avant" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." msgstr "" @@ -663,6 +711,10 @@ msgstr "" msgid "Communicate with the Nokia 810 internet tablet." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "" @@ -689,7 +741,7 @@ msgid "" "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:143 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" msgstr "" @@ -710,47 +762,47 @@ msgstr "" msgid "Communicate with the iPapyrus reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:248 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:428 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:425 msgid "Unable to detect the %s mount point. Try rebooting." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:493 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:490 msgid "Unable to detect the %s disk drive." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:586 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:583 msgid "Could not find mount helper: %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:598 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:595 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:606 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:603 msgid "Unable to mount main memory (Error code: %d)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:743 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:745 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:740 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:742 msgid "The reader has no storage card in this slot." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:747 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744 msgid "Selected slot: %s is not supported." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:776 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 msgid "There is insufficient free space in main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:778 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:780 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 msgid "There is insufficient free space on the storage card" msgstr "" @@ -758,24 +810,32 @@ msgstr "" msgid "Configure Device" msgstr "Ierīces uzstādījumi" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 +msgid "settings for device drivers" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 +msgid "Ordered list of formats the device will accept" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 msgid "Use author sort instead of author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:38 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "" @@ -788,36 +848,12 @@ msgstr "" msgid "Get device information..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 -msgid "Getting list of books on device..." -msgstr "" - #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 msgid "Transferring books to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:237 -msgid "Adding books to device metadata listing..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:243 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:261 -msgid "Removing books from device..." -msgstr "Dzēš grāmatas no ierīces..." - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -msgid "Removing books from device metadata listing..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:294 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 msgid "Sending metadata to device..." msgstr "Sūta ierīcei grāmatu metadatus..." @@ -1454,7 +1490,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" @@ -1490,20 +1526,20 @@ msgstr "" msgid "Add Table of Contents to beginning of the book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " "Default is %default." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1511,7 +1547,7 @@ msgid "" "pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1644,7 +1680,7 @@ msgid "Path to output file" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "" @@ -1726,88 +1762,86 @@ msgstr "" msgid "Comic" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:55 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:866 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Nosaukums" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:353 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:867 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Autors(i)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:207 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:208 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Komentāri" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:295 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1052 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Birkas" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Sērija" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Valoda" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1044 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publicēts" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:402 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "" @@ -1914,53 +1948,57 @@ msgstr "Vāks saglabāts" msgid "No cover found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 msgid "Downloads metadata from Douban.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:33 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:110 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 msgid "description/reviews" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:112 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:113 msgid "Download %s from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:152 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:188 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:205 -msgid "Downloads series information from librarything.com" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -1974,50 +2012,51 @@ msgid "" "\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "Meklējamās grāmatas autors." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "Meklējamās grāmatas nosaukums." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "Meklējamās grāmatas izdevējs." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "Gaidot atbildi no LibraryThing.com iestājās noildze. Mēģiniet vēlāk." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " nav atrasts." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "LibraryThing.com servera kļūda. Mēģiniet vēlāk." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1222 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1371 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Vāks" @@ -2056,70 +2095,70 @@ msgstr "Visi raksti" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Titullapa" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Satura rādītājs" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliogrāfija" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Priekšvārds" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Ilustrāciju saraksts" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Tabulu saraksts" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Piezīmes" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Priekšvārds" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Pamatteksts" @@ -2596,283 +2635,287 @@ msgstr "" msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Nokopēts" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Kopēt" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Kopēt uz starpliktuvi" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:65 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 msgid "Use library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 msgid "User annotations generated from main library only" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:609 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:666 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:704 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:723 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:854 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:919 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1037 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 msgid "No books selected to fetch annotations from" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 msgid "Merging user annotations into database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 msgid "%s
      Last Page Read: %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 msgid "%s
      Last Page Read: Location %d (%d%%)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 msgid "Location %d • %s
      %s
      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 msgid "Page %d • %s
      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 msgid "Location %d • %s
      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:337 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 msgid "Books" msgstr "Grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 msgid "EPUB Books" msgstr "EPUB grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 msgid "LRF Books" msgstr "LRF grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 msgid "HTML Books" msgstr "HTML grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 msgid "LIT Books" msgstr "LIT grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 msgid "MOBI Books" msgstr "MOBI grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 msgid "Topaz books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 msgid "PDF Books" msgstr "PDF grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 msgid "Comics" msgstr "Komiki" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 msgid "Archives" msgstr "Arhīvi" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 msgid "Merged some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 msgid "" "Some duplicates were found and merged into the following existing books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "Add to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1214 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 msgid "No book selected" msgstr "Nav izvēlēta grāmata" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 msgid "No book files found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:454 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 msgid "Cannot delete books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 msgid "No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 msgid "Main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:517 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:418 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 msgid "Storage Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:518 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 msgid "Storage Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 msgid "No books to delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 msgid "None of the selected books are on the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:541 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 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/actions.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 msgid "" "The selected books will be permanently deleted from your device. Are " "you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:608 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 msgid "Cannot download metadata" msgstr "Nav iespējams lejupielādēt metadatus" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "covers" msgstr "vāki" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 msgid "metadata" msgstr "metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:628 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 msgid "Failed to download some metadata" msgstr "Nav iespējams lejupielādēt daļu metadatu" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 msgid "Failed to download metadata for the following:" msgstr "Nevarēja lejuplādēt metadatus:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 msgid "Failed to download metadata:" msgstr "Nevar lejuplādēt metadatus:" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:520 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:946 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Kļūda" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:665 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:703 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 msgid "Cannot edit metadata" msgstr "Nav iespējams rediģēt metadatus" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:722 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 msgid "Cannot merge books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 msgid "At least two books must be selected for merging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 msgid "" "All book formats and metadata from the selected books will be added to the " "first selected book.

      The second and subsequently selected " @@ -2880,7 +2923,7 @@ msgid "" "proceed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:741 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 msgid "" "All book formats and metadata from the selected books will be merged into " "the first selected book.

      After merger the second and " @@ -2890,99 +2933,99 @@ msgid "" "from your computer.

      Are you sure you want to proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:753 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 msgid "" "You are about to merge more than 5 books. Are you sure you want to " "proceed?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 msgid "Cannot save to disk" msgstr "Nav iespējams saglabāt diskā" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:856 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 msgid "Error while saving" msgstr "Kļūda saglabājot" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:897 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:898 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 msgid "Could not save some books" msgstr "Dažas grāmatas nevarēja saglabāt" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 msgid "No books selected to generate catalog for" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 msgid "Generating %s catalog..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 msgid "No books found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 msgid "" "No books to catalog\n" "Check exclude tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 msgid "Catalog generated." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 msgid "Export Catalog Directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:957 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 msgid "Select destination for %s.%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1036 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 msgid "Cannot convert" msgstr "Nav iespējams pārveidot" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1065 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1189 -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 msgid "Choose the format to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1203 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 msgid "Multiple Books Selected" msgstr "Izvēlētas vairākas grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 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 " @@ -2990,11 +3033,11 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 msgid "%s has no available formats." msgstr "" @@ -3002,60 +3045,60 @@ msgstr "" msgid "Searching in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Pievieno..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:255 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Pievienots" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "Pievienošana neveiksmīga" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Atrasti dublikāti!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 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:357 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:423 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Saglabā..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:476 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Saglabāts" @@ -3143,23 +3186,23 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 -#: /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:374 -#: /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:399 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 @@ -3202,55 +3245,56 @@ msgid "" "&Multiple books per folder, assumes every ebook file is a different book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:22 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:44 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:53 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:302 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 msgid "Path" msgstr "Atrodas" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 msgid "Formats" msgstr "Formāti" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:870 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:46 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:294 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:300 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1051 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 msgid "None" msgstr "Nav" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 msgid "Click to open Book Details window" msgstr "" @@ -3299,7 +3343,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 @@ -3309,7 +3353,7 @@ msgstr "" #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 @@ -3331,8 +3375,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1451 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "" @@ -3767,119 +3811,119 @@ msgid "" "possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Izvēlēties vāku " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Kļūda nolasot failu" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

      There was an error reading from file:
      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Grāmatas vāks" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -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:406 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:403 msgid "Change &cover image:" msgstr "Mainīt grāmatas &vāku:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 msgid "Browse for an image to use as the cover of this book." msgstr "Izvēlēties attēlu, kuru izmantos kā šīs grāmatas vāku." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +msgid "Use cover from &source file" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Nosaukums " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "Maina šīs grāmatas nosaukumu" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 -#: /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:367 msgid "&Author(s): " msgstr "&Autors(i): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "Autors kā&rtošanai:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" msgstr "" "Mainīt šīs grāmatas autoru(s). Ja autori ir vairāki, tie jāatdala ar komatu" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 -#: /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:376 msgid "&Publisher: " msgstr "&Izdevniecība: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "&Birkas: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 -#: /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:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

      They can be any words or phrases, separated by commas." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 -#: /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:381 msgid "&Series:" msgstr "&Sērija:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 -#: /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:386 +#: /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 "List of known series. You can add new series." msgstr "Zināmo sēriju saraksts. Jūs varat pievienot jaunas sērijas." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Grāmata " @@ -3964,12 +4008,12 @@ msgid "PDB Input" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "" #: /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:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "" @@ -4093,12 +4137,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:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:74 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "" @@ -4184,22 +4228,22 @@ msgstr "" msgid "TXT Input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

      Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 msgid "Preserve &spaces" msgstr "" @@ -4321,6 +4365,7 @@ msgstr "Pārlūkot vākus" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 @@ -4349,263 +4394,280 @@ msgstr "" msgid "Unrated" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 msgid "Remove all tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 msgid "tags to add" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 msgid "tags to remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:276 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:295 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:396 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid " and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Sūtīt uz pamatatmiņu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Sūtīt uz karti A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Sūtīt uz karti B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 msgid "Main Memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 msgid "Send and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 msgid "Send specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 msgid "Connect to folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 -msgid "Disconnect from folder" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 msgid "Error communicating with device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 msgid "Select folder to open as device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 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/device.py:717 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:753 msgid "Device: " msgstr "Ierīce: " -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:719 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 msgid "Connected " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:824 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:827 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:831 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:828 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "E-grāmata:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:921 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1020 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1081 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1207 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:922 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:929 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1021 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1082 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1201 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1050 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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:1256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

      Cannot upload books to device there is no more free space available " msgstr "" @@ -4696,37 +4758,37 @@ msgstr "" msgid "Edit Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "spraudņi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Pārveidošana" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Saskarne" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Pievienošana/Saglabāšana" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" @@ -4734,11 +4796,11 @@ msgstr "" "Epasta\n" "piegāde" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -4746,191 +4808,191 @@ msgstr "" "Satura\n" "serveris" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Spraudņi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "E-pasts" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
      to this email " "address (provided it is in one of the listed formats)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:299 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 msgid "Wide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 msgid "Narrow" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " "port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s nav derīga spraudņu atrašanās vieta" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Izvēlieties spraudni" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Spraudni nevar atspējot" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "Spraudni %s nevar atspējot" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Spraudnis nav pielāgojams" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Spraudnim %s nav nepieciešama pielāgošana" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 msgid "You must select a column to delete it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 msgid "The selected column is not a custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 msgid "Are you sure?" msgstr "Vai esat pārliecināts?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 msgid "Do you really want to delete column %s and all its data?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:756 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Kļūdu žurnāls:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:343 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:823 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:881 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
      Must be a directory." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
      Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 msgid "Must restart" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 msgid "" "The changes you made require that Calibre be restarted. Please restart as " "soon as practical." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:927 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4938,35 +5000,35 @@ msgid "" "folder directly." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "TabWidget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -4974,81 +5036,98 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " "by customizing the device interface plugins in Preferences->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Iestatījumi" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -5056,275 +5135,283 @@ msgstr "" "Grāmatu &glabāšanas vieta (E-grāmatas tiek glabātas autoriem atbilstošos " "katalogos. Metadati tiek glabāti failā metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Izvēlēties jaunu datubāzes atrašanās vietu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Informēt, kad pieejama &jauna versija" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " sekundes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Izvēlieties va&lodu (nepieciešams pārstartēt):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Standarta" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Augsta" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Zema" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "Darbu &prioritāte:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Vēlamais &rezultāta formāts:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 msgid "Show &splash screen at startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 msgid "Show &average ratings in the tags browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Rīkjosla" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Liela" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Vidēja" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Maza" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 msgid "Remove a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 msgid "Add a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 msgid "Edit settings of a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 msgid "User Interface &layout (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 -msgid "Add an email address to which to send books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 -msgid "&Add email" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 -msgid "Make &default" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 -msgid "&Remove email" +msgid "Disable all animations. Useful if you have a slow/old computer." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +msgid "Add an email address to which to send books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +msgid "&Add email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +msgid "Make &default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +msgid "&Remove email" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" "send checked." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " "settings will only take effect after a server restart." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /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:608 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 msgid "Max. OPDS &ungrouped items:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

      Remember to leave calibre running as the server only runs as long as " @@ -5335,33 +5422,33 @@ msgid "" "the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "" @@ -5398,10 +5485,10 @@ msgid "Number" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:868 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Datums" @@ -5430,57 +5517,61 @@ msgstr "" msgid "Long text, like comments, not shown in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 msgid "Floating point numbers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 msgid "Integers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 msgid "Ratings, shown with stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 msgid "Yes/No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 msgid "No column selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 msgid "No column has been selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 msgid "Selected column is not a user-defined column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 msgid "No lookup name was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 msgid "" "The label must contain only letters, digits and underscores, and start with " "a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 msgid "No column heading was provided" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 msgid "The lookup name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 msgid "The heading %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 msgid "" "The lookup name must be lower case and cannot contain \":\"s or spaces" msgstr "" @@ -5594,7 +5685,7 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 msgid "Format" msgstr "" @@ -5610,39 +5701,39 @@ msgstr "" msgid "Manage authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Autors kārtošanai" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "Meklē metadatus..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "Nav iespējams atrast metadatus" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Brīdinājums" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "Metadati netika atrasti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5728,7 +5819,7 @@ msgid "Author s&ort: " msgstr "Autors &kārtošanai: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -5737,14 +5828,14 @@ msgstr "" "jākārto kā Dikenss, Čārlzs." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 -#: /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:372 msgid "&Rating:" msgstr "&Vērtējums:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 -#: /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 +#: /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 "Rating of this book. 0-5 stars" msgstr "Šīs grāmatas vērtējums (0 - 5 zvaigznes)" @@ -5753,7 +5844,7 @@ msgid "No change" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 -#: /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:375 msgid " stars" msgstr " zvaigznes" @@ -5763,8 +5854,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 -#: /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 +#: /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 "Open Tag Editor" msgstr "Atvērt birku redaktoru" @@ -5792,10 +5883,6 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 -msgid "Automatically number books in this series" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 msgid "" "Remove stored conversion settings for the selected books.\n" @@ -5808,207 +5895,207 @@ msgid "Remove &stored conversion settings for the selected books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:136 msgid "Choose formats for " msgstr "Izvēlieties formātus " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:205 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:206 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:260 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:255 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:298 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 msgid "Cannot use tag editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 msgid "The tags editor cannot be used if you have modified the tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Lejupielādē vāku..." +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:570 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 msgid "Cannot fetch cover" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 msgid "Could not fetch cover.
      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "Lejupielādes noildze." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "Šai grāmatai nevar atrast vāku. Mēģiniet norādīt ISBN." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Slikts vāks" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:647 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:719 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:720 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Rediģēt metadatus" -#: /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:362 msgid "Meta information" msgstr "Metadati" -#: /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:365 msgid "Swap the author and title" msgstr "Mainīt vietām autoru un nosaukumu" -#: /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:368 msgid "Author S&ort: " 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:370 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:387 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /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:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" msgstr "I&zdota:" -#: /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:390 msgid "dd MMM yyyy" msgstr "yyyy.MM.dd" -#: /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:391 msgid "&Date:" msgstr "&Datums:" -#: /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:392 msgid "&Comments" msgstr "&Kometāri" -#: /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:393 msgid "&Fetch metadata from server" msgstr "Lejupielādēt &metdatus" -#: /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:394 msgid "Available Formats" msgstr "Pieejamie formāti" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 msgid "Remove the selected formats for this book from the database." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "Uzstāda vāka attēlu izvēlētā formāta grāmatai" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Lejupielādēt &vāka attēlu" @@ -6355,7 +6442,7 @@ msgid "Select the content kind of the new category" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "Vai esat pārliecināts?" @@ -6405,41 +6492,33 @@ msgstr "" msgid "Add tag to available tags and apply it to current book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 msgid "Item is blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:66 -msgid "Item already used" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:67 -msgid "The item %s is already used." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 msgid "No item selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 msgid "You must select one item from the list of Available items." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 msgid "No items selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 msgid "You must select at least one items from the list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 msgid "Are you certain you want to delete the following items?" msgstr "" @@ -6703,11 +6782,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /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 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "" @@ -6759,31 +6838,31 @@ msgstr "Rediģēt metadatus masveidā" msgid "Download metadata and covers" msgstr "Lejupielādēt metadatus un vākus" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 msgid "Download only metadata" msgstr "Lejupielādēt tikai metadatus" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 msgid "Download only covers" msgstr "Lejupielādēt tikai vākus" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 msgid "Download only social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 msgid "Merge into first selected book - delete others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 msgid "Merge into first selected book - keep others" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 msgid "Add books from a single directory" msgstr "Pievienot vienā katalogā esošas grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -6792,7 +6871,7 @@ msgstr "" "(Katalogā viena grāmata, katrs e-grāmatu fails tiek uzskatītas par vienu un " "to pašu grāmatu dažādos formātos)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -6801,92 +6880,98 @@ msgstr "" "(Vairākas grāmatas katalogā, atsevišķi e-grāmatu faili tiek uzskatīti par " "dažādām grāmatām)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 msgid "Add Empty book. (Book entry with no formats)" msgstr "Pievienot tukšu grāmatu. (Grāmatas ierakstu bez formātiem)" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 msgid "Save to disk" msgstr "Saglabāt diskā" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 msgid "Save to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:105 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:109 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 msgid "Save only %s format to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 msgid "View" msgstr "Skatīt" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 msgid "View specific format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 msgid "Remove selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:127 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 msgid "Remove files of a specific format from selected books.." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 msgid "Remove all formats from selected books, except..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 msgid "Remove covers from selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 msgid "Remove matching books from device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 msgid "Bulk convert" msgstr "Masveida pārveidošana" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 msgid "Create catalog of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 msgid "Similar books..." msgstr "Līdzīgas grāmatas..." -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 msgid "Add books to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 msgid "Cover Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 msgid "Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/init.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 msgid "Book Details" msgstr "" @@ -6957,42 +7042,42 @@ msgstr "" msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Izmērs (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Vērtējums" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "%s. no %s grāmatām." -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:662 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 msgid "Double click to edit me

      " msgstr "" @@ -7036,11 +7121,11 @@ msgstr "" msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -7141,99 +7226,99 @@ msgstr "Nemeklēt atjauninājumus" msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 msgid "Choose a location for your calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 msgid "Failed to create library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 msgid "Failed to create calibre library at: %r." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 msgid "Initializing user interface..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 msgid "Repairing failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 msgid "The database repair failed. Starting with a new empty library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:191 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 msgid "Starting %s: Loading books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:287 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "" @@ -7412,20 +7497,20 @@ msgstr "Grāmatai nav ne nosaukuma ne ISBN" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Meklēt" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 msgid "Search (For Advanced Search click the button to the left)" msgstr "Meklēt (paplašinātai meklēšanai nospiediet pogu kreisajā pusē)" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Saved Searches" msgstr "" @@ -7501,74 +7586,74 @@ msgstr "" msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 msgid "Rename '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 msgid "Edit sort for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:213 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 msgid "Manage Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 msgid "Manage User Categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 msgid "The saved search name %s is already used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:727 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:738 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 msgid "Manage &user categories" msgstr "" @@ -7635,72 +7720,72 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
      %%(device)s

      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 msgid "Cannot configure before calibre is restarted." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:489 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

      Could not convert: %s

      It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 msgid "" "is the result of the efforts of many volunteers from all over the world. If " "you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
      \n" " Quitting may cause corruption on the device.
      \n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:642 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -8183,15 +8268,15 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -8201,76 +8286,76 @@ msgstr "" "%d\n" "grāmatas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 msgid "Books located at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:507 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:932 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 msgid "Drag to resize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 msgid "Show" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:968 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 msgid "Hide" msgstr "" @@ -8534,48 +8619,48 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:275 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:278 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:281 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:284 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:285 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:435 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:445 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:438 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:448 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:442 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 msgid "empty" msgstr "" @@ -8961,7 +9046,7 @@ msgstr "" msgid "Error: You must specify a catalog output file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:688 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -8973,17 +9058,17 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:699 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -8992,19 +9077,19 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:736 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:748 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:750 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:756 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -9014,15 +9099,15 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:764 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:774 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:787 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -9038,39 +9123,39 @@ msgstr "" msgid "%sAverage rating is %3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:520 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 msgid "Main" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:522 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 msgid "Card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:524 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 msgid "Card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

      Migrating old database to ebook library in %s

      " msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1765 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "Kopē %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1782 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1875 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1916 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1938 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "" @@ -9370,6 +9455,10 @@ msgstr "" msgid "User-created tag browser categories" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "" @@ -9531,93 +9620,93 @@ msgstr "" msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:703 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Lejupielāde pabeigta" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:705 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:711 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " no " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:715 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:849 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:854 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:860 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Mēģina lejupielādēt vāku..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:862 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:943 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:959 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:969 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Lejupielādē vāku no %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1021 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1211 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1282 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1293 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1310 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1457 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1473 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9629,12 +9718,12 @@ msgstr "" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "" diff --git a/src/calibre/translations/nb.po b/src/calibre/translations/nb.po index dccd8d61c9..adb956f9dd 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: 2010-05-21 22:47+0000\n" -"PO-Revision-Date: 2010-05-21 07:17+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-06 09:39+0000\n" +"Last-Translator: Øyvind Øritsland \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: 2010-05-22 03:57+0000\n" +"X-Launchpad-Export-Date: 2010-07-07 03:38+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 @@ -23,39 +23,40 @@ msgstr "Gjør absolutt ingenting" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:46 #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:72 -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:75 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /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/driver.py:204 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:230 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:264 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:364 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:62 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:118 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:120 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:444 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:912 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:123 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:125 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:945 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1057 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:39 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:28 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pml.py:23 @@ -71,9 +72,9 @@ msgstr "Gjør absolutt ingenting" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:909 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:914 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:980 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -97,50 +98,53 @@ msgstr "Gjør absolutt ingenting" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:63 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:81 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:82 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:87 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:88 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:97 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:286 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:574 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:583 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:460 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:419 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:441 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:969 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1096 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1694 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1697 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 -#: /home/kovid/work/calibre/src/calibre/library/cli.py:311 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:248 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:260 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:680 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:717 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1111 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1113 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1235 -#: /home/kovid/work/calibre/src/calibre/library/server.py:671 -#: /home/kovid/work/calibre/src/calibre/library/server.py:747 -#: /home/kovid/work/calibre/src/calibre/library/server.py:794 -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114 -#: /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/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 +#: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 +#: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -158,11 +162,11 @@ msgstr "Filtype" msgid "Metadata reader" msgstr "Metadata-leser" -#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:237 +#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:235 msgid "Metadata writer" msgstr "Metadata-skriver" -#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:267 +#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:263 msgid "Catalog generator" msgstr "Katalogoppretter" @@ -176,7 +180,7 @@ msgstr "" "lenkede filer. Dette programtillegget kjører hver gang du legger til en HTML " "fil til biblioteket." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -184,7 +188,7 @@ msgstr "" "Skrifttegnkoding for inndata av HTML filer. Vanlige valg inkluderer: cp1252, " "latin1, iso-8859-1 og utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -194,49 +198,49 @@ msgstr "" "pmlname_img eller images. Dette programtillegget kjører hver gang du legger " "til en PML-fil til biblioteket." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Ekstrakter omslagside fra tegneseriefiler" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" msgstr "Les metadata fra %s filer" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" msgstr "Les metadata fra e boken i RAR arkivene" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" msgstr "Les metadata fra e boken i ZIP arkivene" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" msgstr "Set metadata i %s filer" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" msgstr "Set metadata fra %s filer" @@ -281,7 +285,7 @@ msgstr "" "vet noe om dokumentets inndata." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:258 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -293,70 +297,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Denne profilen er ment for SONY PRS 300" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Denne profilen er ment for SONY PRS-900" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:322 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Denne profilen er ment for Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:333 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Denne profilen er ment for Mobipocket bøker." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:346 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Denne profilen er ment for Hanlin V3 og kloner av denne." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:358 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Denne profilen er ment for HAnlin V5 og dens kloner" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:366 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Denne profilen er ment for Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:379 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Denne profilen er ment for Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:390 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Denne profilen er ment for Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Denne profilen er ment for Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Denne profilen er ment for IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:452 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Denne profilen er ment for IRex Digital Reader 800" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:466 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Denne profilen er ment for B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Profil for utdata." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -366,24 +370,24 @@ msgstr "" "å lage et dokument som er ment til å bli lest på en datamaskin eller andre " "dataprodukter." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:248 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" -msgstr "" +msgstr "Benyttes for iPad og liknende enheter med en oppløsning på 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:271 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Denne profilen er tiltenkt Kobo Reader" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:283 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Denne profilen er ment for SONY PRS-300" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Denne profilen er ment for 5-inch JetBook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." @@ -391,7 +395,7 @@ msgstr "" "Denne profilen er ment for SONY PRS serien. 500/505/700 osv, i " "landskapsmodus. Dette er hovedsakelig anvendelig for tegneserier." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:408 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Denne profilen er ment for Amazon Kindle DX." @@ -411,15 +415,19 @@ msgstr "Lokal innstilling av programtillegg" msgid "Disabled plugins" msgstr "Slå av programtillegg" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:77 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 +msgid "Enabled plugins" +msgstr "Påslåtte programtillegg" + +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " msgstr "Ingen gyldige programtillegg ble funnet i " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:278 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:460 msgid "Initialization of plugin %s failed with traceback:" msgstr "Initialisering av programtillegg %s mislykket med sporingshistorie:" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:433 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:493 msgid "" " %prog options\n" "\n" @@ -431,19 +439,19 @@ msgstr "" " Tilpass Calibre ved å laste eksterne programtillegg.\n" " " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:499 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "" "Legg til et programtillegg ved å spesifisere stien hvor den befinner seg i " "ZIP filen" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:441 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:501 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" "Fjern et tilpasset programtillegg ved navn. Dette har ingen effekt på " "innebygde programtillegg" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:443 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:503 msgid "" "Customize plugin. Specify name of plugin and customization string separated " "by a comma." @@ -451,15 +459,15 @@ msgstr "" "Tilpass programtillegg. Spesifiser navnet på programtillegget og " "tilpassningsstrengen separert ved komma." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:445 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:505 msgid "List all installed plugins" msgstr "Se alle Installerte programtillegg" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:507 msgid "Enable the named plugin" msgstr "Slå på navngitte programtillegg" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:449 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:509 msgid "Disable the named plugin" msgstr "Slå av navngitte programtillegg" @@ -467,7 +475,7 @@ msgstr "Slå av navngitte programtillegg" msgid "Communicate with Android phones." msgstr "Kommuniser med Android-telefoner." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -475,10 +483,80 @@ msgstr "" "Komma-delt liste av foldere som av e-bøker som sendes til enheten. Den " "første som eksisterer vil bli benyttet" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Kommuniser med S60 telefoner." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "Kommuniser med iTunes/iBooks." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 +msgid "Apple device detected, launching iTunes, please wait ..." +msgstr "Apple-enhet er oppdaget, starter i iTunes, vennligst vent..." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 +msgid "Updating device metadata listing..." +msgstr "Oppdaterer metadatalister for enheten..." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 +msgid "%d of %d" +msgstr "%d av %d" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 +msgid "finished" +msgstr "fullført" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Bruk serier som kategori i iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "Cache omslag fra iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 +msgid "" +"Some books not found in iTunes database.\n" +"Delete using the iBooks app.\n" +"Click 'Show Details' for a list." +msgstr "" +"Noen av bøkene ble ikke funnet i iTunes database.\n" +"Avslutt bruk av iBook app.\n" +"Klikk \"Vis Detaljer\" for liste." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 +msgid "" +"Some cover art could not be converted.\n" +"Click 'Show Details' for a list." +msgstr "" +"Noen av omslagsbildene kunne ikke konverteres.\n" +"Klikk \"Vis Detaljer\" for liste." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:167 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:180 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 +msgid "News" +msgstr "Nyheter" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Kommuniser med iTunes" + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Kommuniser med Binatone Readme eBook leser" @@ -501,6 +579,14 @@ msgstr "Kommuniser med Cybook Gen3 / Opus eBook leser." msgid "Communicate with the EB600 eBook reader." msgstr "Kommuniser med EB600 eBook-leser." +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Kommuniser med Astak Mentor EB600" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 +msgid "Communicate with the PocketBook 301 reader." +msgstr "Kommuniser med PocketBook 301 leser." + #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" msgstr "Entourage Edge" @@ -513,31 +599,57 @@ msgstr "Kommuniser med Entourage Edge." msgid "Communicate with the ESlick eBook reader." msgstr "Kommuniser med ESlick eBook reader" +#: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:49 +msgid "Communicate with the Sigmatek eBook reader." +msgstr "Kommuniser med Sigmatek eBook-leser." + +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:16 +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:30 +msgid "Use an arbitrary folder as a device." +msgstr "Benytt en valgt mappe som en enhet." + +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:26 +#: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 +msgid "Device Interface" +msgstr "Enhetsgrensesnitt" + #: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:19 msgid "Communicate with Hanlin V3 eBook readers." msgstr "Kommuniser med Hanlin V3 eBook lesere" -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:95 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:87 msgid "Communicate with Hanlin V5 eBook readers." msgstr "Kommuniser med Hanlin V5 eBook lesere" -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:114 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:106 msgid "Communicate with the BOOX eBook reader." msgstr "Kommuniser med BOOZ eBook leser" +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:121 +msgid "" +"Comma separated list of directories to send e-books to on the device. The " +"first one that exists will be used." +msgstr "" +"Kommaseparert liste av mapper som bøkene skal sendes til på enheten. Den " +"første som finnes på enheten vil bli benyttet." + #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." msgstr "Kommuniser med Hanvon N520 eBook leser" -#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:40 +msgid "Communicate with The Book reader." +msgstr "Kommuniser med The Book leser." + +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:51 msgid "Communicate with the SpringDesign Alex eBook reader." msgstr "Kommuniser med Spring Design Alex eBook leser." -#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:67 msgid "Communicate with the Azbooka" -msgstr "" +msgstr "Kommuniser med Azbooka" -#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:80 msgid "Communicate with the Elonex EB 511 eBook reader." msgstr "Kommuniser med Elonex EB 511 eBook reader" @@ -547,14 +659,10 @@ msgstr "Kommuniser med IRex Iliad eBook-leser." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:17 #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:18 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:29 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:38 msgid "John Schember" msgstr "John Schember" -#: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 -msgid "Device Interface" -msgstr "Enhetsgrensesnitt" - #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:16 msgid "Communicate with the IRex Digital Reader 1000 eBook reader." msgstr "Kommuniser med IRex Digital Reader 1000 eBook-leser." @@ -571,29 +679,67 @@ msgstr "Kommuniser med Iriver Story reader" msgid "Communicate with the JetBook eBook reader." msgstr "Kommuniser med JetBook eBook-leser." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:21 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:42 msgid "Communicate with the Kindle eBook reader." msgstr "Kommuniser med Kindle eBook-leser." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:152 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:169 msgid "Communicate with the Kindle 2 eBook reader." msgstr "Kommuniser med Kindle 2 eBook-leser." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:162 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:210 msgid "Communicate with the Kindle DX eBook reader." msgstr "Kommuniser med Kindle DX eBook leser." +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 +msgid "Communicate with the Kobo Reader" +msgstr "Kommuniser med Kobo Reader" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Motta liste over bøker på enheten..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Fjern bøker fra enheten..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Fjern bøker fra enhetens metadatalister..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Legg bøker til enhetens metadatalister..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Kommuniser med Palm Pre" #: /home/kovid/work/calibre/src/calibre/devices/misc.py:35 -msgid "Communicate with the Kobo Reader" -msgstr "Kommuniser med Kobo Reader" - -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:56 msgid "Communicate with the Booq Avant" -msgstr "" +msgstr "Kommuniser med Booq Avant" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Kommuniser med Sweex MM300" #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." @@ -603,6 +749,10 @@ msgstr "Kommuniser med Nokia 770 internet enhet." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Kommuniser med Nokia 810 enhet." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "Kommuniser med Nokia E52" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "Nook" @@ -619,25 +769,11 @@ msgstr "Kommuniser med Nuut2 eBook-reader" msgid "Communicate with the Sony PRS-500 eBook reader." msgstr "Kommuniser med Sony PRS-500 eBook-leser." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:150 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:104 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:107 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:110 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:121 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:44 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:47 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:50 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:80 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:89 -msgid "Getting list of books on device..." -msgstr "Motta liste over bøker på enheten..." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:22 +msgid "Communicate with all the Sony eBook readers." +msgstr "Kommuniser med alle Sony eBook lesere." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:26 -msgid "Communicate with the Sony PRS-300/505/500 eBook reader." -msgstr "Kommuniser med Sony PRS-300/505/500 eBook leser" - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:58 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " @@ -645,28 +781,10 @@ msgstr "" "Komma-separert liste over felt for metadata for å endre til samling på " "enheten. Dette inkluderer: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:149 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:151 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:115 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:117 -msgid "Transferring books to device..." -msgstr "Overfører bøker til enheten..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:189 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:196 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:144 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:161 -msgid "Removing books from device..." -msgstr "Fjern bøker fra enheten..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:224 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:176 -msgid "Sending metadata to device..." -msgstr "Overfører metadata til enheten..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:230 -msgid "Communicate with the Sony PRS-600/700/900 eBook reader." -msgstr "Kommuniser med Sony PRS-600/700/900 eBook leser." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 +msgid "Unnamed" +msgstr "Ikke navngitt" #: /home/kovid/work/calibre/src/calibre/devices/sne/driver.py:17 msgid "Communicate with the Samsung SNE eBook reader." @@ -676,15 +794,15 @@ msgstr "Kommuniser med Samsung SNE eBook leser" msgid "Communicate with the Teclast K3 reader." msgstr "Kommuniser med Teclast K3 leser" -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:45 +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:37 msgid "Communicate with the Newsmy reader." -msgstr "" +msgstr "Kommuniser med Newsmy leser" -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:60 +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:49 msgid "Communicate with the iPapyrus reader." -msgstr "" +msgstr "Kommuniser med iPapyrus leser." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:252 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "Kan ikke finne %s lagringsenhet. Forsøk med en omstart." @@ -721,72 +839,65 @@ msgstr "Leseren har ikke noe lagringskort i denne minnekortleseren." 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:777 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 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:779 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:781 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 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:811 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:817 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:842 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:240 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:589 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:995 -msgid "News" -msgstr "Nyheter" - #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:12 msgid "Configure Device" msgstr "Konfigurer enheten" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 msgid "settings for device drivers" msgstr "innstillinger av enhetsdrivere" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 msgid "Ordered list of formats the device will accept" msgstr "Bestilt liste av formater som enheten vil akseptere" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "Legg filer i underkataloger dersom enheten støtter dette" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" msgstr "Les metadata fra filer på enheten" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 +msgid "Use author sort instead of author" +msgstr "Benytt forfattersortering isteden for forfatter" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Mal for å kontrollere hvordan bøker skal lagres" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Tilleggskonfigurasjon" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:28 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:37 msgid "Communicate with an eBook reader." msgstr "Kommuniser med en eBokleser" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:53 msgid "Get device information..." msgstr "Få informasjon om enheten..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:132 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:140 -msgid "Adding books to device metadata listing..." -msgstr "Legg bøker til enhetens metadatalister..." +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 +msgid "Transferring books to device..." +msgstr "Overfører bøker til enheten..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:165 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:170 -msgid "Removing books from device metadata listing..." -msgstr "Fjern bøker fra enhetens metadatalister..." +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 +msgid "Sending metadata to device..." +msgstr "Overfører metadata til enheten..." #: /home/kovid/work/calibre/src/calibre/ebooks/chm/reader.py:41 msgid "%prog [options] mybook.chm" @@ -1440,6 +1551,12 @@ msgid "" "corresponding pair of normal characters. This option will preserve them " "instead." msgstr "" +"Behold tilknytninger som finnes i inndata-dokumentet. En tilknytning er en " +"spesiell gjengivelse av et par av bokstaver, som ff, fi, osv. De fleste " +"lesere har ikke støtte for tilknytninger i deres standardfonter, så de vil " +"mest sannsynlig ikke gjengies korrekt. Som standard vil calibre omgjøre en " +"tilknytning til en korresponderende vanlige bokstaver. Dette valget vil " +"gjøre at de beholdes som tiltenkt." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:38 @@ -1524,25 +1641,25 @@ msgstr "Kunne ikke finne noen bok i arkivet" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:647 msgid "Values of series index and rating must be numbers. Ignoring" msgstr "" -"Verdier av indekseringsserier og bedømming må være heltall. Ignorerer" +"Verdier av indekseringsserier og vurdering må være heltall. Ignorerer" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:654 msgid "Failed to parse date/time" msgstr "Kunne ikke bestemme dato/tid" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:802 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:809 msgid "Converting input to HTML..." msgstr "Konverterer inndata til HTML..." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:829 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:836 msgid "Running transforms on ebook..." msgstr "Kjører transformering av e-boken..." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:916 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:923 msgid "Creating" msgstr "Oppretter" -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:205 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:56 msgid "" "Extract the contents of the generated EPUB file to the specified directory. " "The contents of the directory are first deleted, so be careful." @@ -1550,7 +1667,7 @@ msgstr "" "Ekstraherer innholdet fra den genererte EPUB-filen til den spesifiserte " "katalogen. Innholdet i denne katalogen blir først slettet, så vær forsiktig." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:211 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:62 msgid "" "Turn off splitting at page breaks. Normally, input files are automatically " "split at every page break into two files. This gives an output ebook that " @@ -1564,7 +1681,7 @@ msgstr "" "dersom kildefilen inneholder mange sideskift, bør du slå av deling ved " "sideskift." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:222 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:73 msgid "" "Split all HTML files larger than this size (in KB). This is necessary as " "most EPUB readers cannot handle large file sizes. The default of %defaultKB " @@ -1574,7 +1691,7 @@ msgstr "" "siden de fleste EPUB lesere ikke kan håndtere store filstørrelser. Standard " "for %defaultKB er størrelsen som er krevet av Adobe Digital Editions." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:229 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:80 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 " @@ -1584,18 +1701,18 @@ 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/epub/output.py:235 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" -"Ikke benytt SVG for bokomslag. Bruk dette valget dersom din EPUB vil bli " -"brukt på en enhet som ikke støtter SVG, som iPhone eller jetBook Lite. Uten " -"dette valget, vil slike enheter vise omslaget som en tom side." +"Bruk ikke SVG til bokomslaget. Dette valget dersom din EPUB skal benyttes på " +"en enhet som ikke støtter SVG, som iPhone eller JetBook Lite. Uten dette " +"valget vil slike enheter vise omslaget som en tom side." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" "When using an SVG cover, this option will cause the cover to scale to cover " "the available screen area, but still preserve its aspect ratio (ratio of " @@ -1603,6 +1720,15 @@ msgid "" "and bottom of the image, but the image will never be distorted. Without this " "option the image may be slightly distorted, but there will be no borders." msgstr "" +"Når SVG omslag benyttes, vil dette valget gjøre at omslaget skaleres til å " +"benytte hele skjermområdet, men fortsatt beholde dets aspektområde (høyde og " +"bredde). Dette betyr at det kan oppstå hvite avgrensninger på sidene, toppen " +"og bunnen av et bilde, men bildet vil ikke bli forskjøvet. Uten dette valget " +"kan bildet bli noe forskjøvet, men ingen avgrensninger vil oppstå." + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:169 +msgid "Start" +msgstr "Start" #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:144 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:102 @@ -1622,14 +1748,14 @@ msgstr "Ikke legg til innholdsfortegnelse i begynnelsen av boken." msgid "Add Table of Contents to beginning of the book." msgstr "Legg innholdsfortegnelse til begynnelsen av boken." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." msgstr "" "Omgå lenker for HTML filer i bredden først. Normalt omgåes de først i dybden." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1639,7 +1765,7 @@ msgstr "" "ikkenegative. 0 tilsier at ingen lenker i HTML filens rot blir fulgt. " "Standard er %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1651,7 +1777,7 @@ msgstr "" "siden det kan resultere i varierende dårlige sideeffekter i resten av " "konverteringsfølgerekken." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1797,7 +1923,7 @@ msgid "Path to output file" msgstr "Filsti til utfil" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "Informativ behandling" @@ -1896,80 +2022,86 @@ msgstr "Monospace font familie" msgid "Comic" msgstr "Tegneserie" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:363 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Tittel" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:364 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:175 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:421 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1160 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Forfatter(e)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:365 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Forlag" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:366 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Produsent" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:95 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Sammendrag:" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:181 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:366 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1104 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1163 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Nøkkelord" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:96 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Serie" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:378 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Språk" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:380 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1103 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Tidstempel" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:178 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Publisert" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Rettigheter" @@ -1977,7 +2109,7 @@ msgstr "Rettigheter" msgid "EDITORIAL REVIEW" msgstr "REDAKSJONELL ANMELDELSE" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41 msgid "" "Extract common e-book formats from archives (zip/rar) files. Also try to " "autodetect if they are actually cbz/cbr files." @@ -2100,6 +2232,14 @@ msgstr "Omslag lagret til" msgid "No cover found" msgstr "Fant ikke omslag" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "Last ned omslag" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "Last ned metadata fra Douban.com" + #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" msgstr "Nedlasting av metadata" @@ -2120,15 +2260,15 @@ msgstr "beskrivelse/betraktninger" msgid "Download %s from %s" msgstr "Last ned %s fra %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:137 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" msgstr "Last ned metadata fra Google Bøker" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:153 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" msgstr "Last ned metadata fra isbnb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2136,11 +2276,15 @@ msgstr "" "For å benytte isbnb.com må du først sette opp en %sgratis konto%s og legge " "inn tilgansnøkkelen under." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:189 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" msgstr "Last ned sosiale metadata fra amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" +msgstr "Last ned serier/emneord/bedømningsinformasjon fra librarything.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2165,28 +2309,28 @@ msgstr "" "konto hos isbndb.com.\n" "\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." msgstr "ISBN ID for boken du ønsker å motta metadata til." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "Forfatteren til boken du søkeer etter." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "Tittelen til boken du søker etter." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "Forlaget til boken du søker etter." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "" "LibraryThing.com kunne ikke kontaktes. Vennligst forsøk igjen senere." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2194,29 +2338,33 @@ msgstr "" "Kunne ikke finne omslaget da serveren er opptatt. Vennligst forsøk igjen " "senere." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " ikke funnet." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "" "LibraryThing.com har feil på serveren. Vennligst forsøk igjen senere." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" "\n" -"%prog [valg] ISBN\n" +"%prog [valgmuligheter] ISBN\n" "\n" -"Finn et omslagsbilde for boken identifisert ved ISBN fra LibraryThing.com\n" +"Skaff et omslagsbilde/sosiale metadata for boken som er identifisert fra " +"ISBN via LibraryThing.com\n" +"representerer et linjeskift. Begynn en ny linje i den tilsvarende posisjonen " +"i oversettelsen.\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1103 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Omslagside" @@ -2259,74 +2407,74 @@ msgstr "Alle artikler" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "Dette er en Amazon Topaz-bok. Den kan ikke koverteres." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Tittelside" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Innholdsfortegnelse" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Innhold" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Ordliste" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Påskjønnelse" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Litteraturliste" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Kolofon" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Opphavsrettighet" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Tilegnet" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epigraf" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Forord" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Illustrasjonsliste" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Tabell-liste" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Merknader" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Forord" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1388 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Hovedtekst" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:39 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:41 msgid "%s format books are not supported" msgstr "%s formaterte bøker er ikke støttet" @@ -2343,10 +2491,6 @@ msgid "" "Could not find reasonable point at which to split: %s Sub-tree size: %d KB" msgstr "Kunne ikke finne et fornuftig sted å dele: %s Grenstørrelse: %d KB" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 -msgid "Unnamed" -msgstr "Ikke navngitt" - #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:32 msgid "OPF/NCX/etc. generation options." msgstr "OPF/NCX/osv. Genereringsvalg." @@ -2371,7 +2515,7 @@ msgstr "Sidepanel" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:22 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:23 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:23 msgid "" "Normally calibre treats blank lines as paragraph markers. With this option " "it will assume that every line represents a paragraph instead." @@ -2381,7 +2525,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:26 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:27 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:27 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+ " @@ -2542,6 +2686,8 @@ msgstr "" "Motta informasjon om en PDF.\n" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author" msgstr "Forfatter" @@ -2641,7 +2787,7 @@ msgstr "" msgid "Split Options:" msgstr "Inndelingsvalg:" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:59 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:31 msgid "" "The unit of measure. Default is inch. Choices are %s Note: This does not " "override the unit for margins!" @@ -2649,7 +2795,7 @@ msgstr "" "Måleenhet. Standard er i tommer. Valgmuligheter er %s Merk: Dette " "overskriver ikke måleenheter for marger!" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:36 msgid "" "The size of the paper. This size will be overridden when an output profile " "is used. Default is letter. Choices are %s" @@ -2657,7 +2803,7 @@ msgstr "" "Papirstørrelse. Denne størrelsen vil bli overskrevet når en utdataprofil er " "benyttet. Standard er brevformat. Valgmuligheter er %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:68 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:40 msgid "" "Custom size of the document. Use the form widthxheight EG. `123x321` to " "specify the width and height. This overrides any specified paper-size." @@ -2666,10 +2812,18 @@ msgstr "" "`123x321` for å spesifisere bredde og høyde. Dette overskriver alle andre " "spesifiserte papirstørrelser." -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:73 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:45 msgid "The orientation of the page. Default is portrait. Choices are %s" msgstr "Sideorientering. Standard er portrett. Valgmuligheter er %s" +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:49 +msgid "" +"Preserve the aspect ratio of the cover, instead of stretching it to fill the " +"ull first page of the generated pdf." +msgstr "" +"Behold aspektområde for omslagsbildet fremfor å strekke det slik at det " +"fyller hele førstesiden av en generert pdf." + #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/pdftohtml.py:55 msgid "Could not find pdftohtml, check it is in your PATH" msgstr "" @@ -2705,14 +2859,22 @@ msgstr "" "den laveste kompresjonen men er raskest og 10 har den høyeste kompresjonen " "men den sakteste." -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:32 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:33 +msgid "" +"Normally extra spaces are condensed into a single space. With this option " +"all spaces will be displayed." +msgstr "" +"Vanligvis vil ekstraområder sees på som en enkeltlinje. Uten dette valget " +"vil hele området bli vist." + +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:36 msgid "" "Run the text input through the markdown pre-processor. To learn more about " "markdown see" msgstr "" "Kjør tekst inndata via markdown-forprosessor. For å lære med om markdown, se" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:35 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:39 msgid "Do not insert a Table of Contents into the output text." msgstr "Legg aldri en liste over innhold til utdata-teksten." @@ -2753,165 +2915,584 @@ msgstr "" "Tving deling på maks-linjelengdens verdi når ingen mellomrom er til stede. " "Tillater også maks-linjelengde å være under minimum." -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:33 msgid "Send file to storage card instead of main memory by default" msgstr "" "Send en fil til et lagringskort i stedet for hovedminnet som standard" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:35 msgid "Confirm before deleting" msgstr "Bekreft før sletting" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:37 msgid "Toolbar icon size" msgstr "Ikonstørrelse for verktøylinjen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:39 msgid "Show button labels in the toolbar" msgstr "Vis knappebeskrivelse i verktøylinjen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:41 msgid "Main window geometry" msgstr "Hovedvindus geometri" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:43 msgid "Notify when a new version is available" msgstr "Varsle dersom en ny versjon er tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:45 msgid "Use Roman numerals for series number" msgstr "Bruk romerske tall for serienummer" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:45 -msgid "Sort tags list by popularity" -msgstr "Sorter merkelappliste etter populæritet" - #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:47 +msgid "Sort tags list by name, popularity, or rating" +msgstr "Sorter emneord listet ved navn, popularitet eller bedømning" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 msgid "Number of covers to show in the cover browsing mode" msgstr "Antall omslag som skal vises ved omslagsvisningsmodus" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:51 msgid "Defaults for conversion to LRF" msgstr "Standarder for konvertering til LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:53 msgid "Options for the LRF ebook viewer" msgstr "Valgmuligheter for LRF e-bokleser" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:56 msgid "Formats that are viewed using the internal viewer" msgstr "Formater som er vist ved bruk av intern leser" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:58 msgid "Columns to be displayed in the book list" msgstr "Kolonner som skal vises i e-boklisten" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:59 msgid "Automatically launch content server on application startup" msgstr "Start innholdsserver automatisk ved programstart" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:60 msgid "Oldest news kept in database" msgstr "Eldste nyheter i databasen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:61 msgid "Show system tray icon" msgstr "Vis systemikon" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 msgid "Upload downloaded news to device" msgstr "Legg inn nedlastede nyheter til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 msgid "Delete books from library after uploading to device" msgstr "Slett bøker fra biblioteket etter at du har lagt dem inn i enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 msgid "" "Show the cover flow in a separate window instead of in the main calibre " "window" msgstr "Vis omslaget i et eget vindu istedet for i calibres hovedvindu" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 msgid "Disable notifications from the system tray icon" msgstr "Slå av varsler fra systemikonet" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71 msgid "Default action to perform when send to device button is clicked" msgstr "Standard oppgaver som gjøres når send til enhet-knappen er klikket" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 msgid "Maximum number of waiting worker processes" msgstr "Maksumum antall ventende arbeidsprosesser" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95 msgid "Download social metadata (tags/rating/etc.)" msgstr "Last ned sosiale metadata (emneord/bedømmelser/osv.)" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97 msgid "Overwrite author and title with new metadata" msgstr "Overskriv forfatter og tittel med nye metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99 msgid "Limit max simultaneous jobs to number of CPUs" msgstr "Begrense maksimalt antall samtidige oppgaver til antallet av CPUer" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:475 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101 +msgid "tag browser categories not to display" +msgstr "Merk browser-kategorier som ikke skal vises" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103 +msgid "The layout of the user interface" +msgstr "Bruksområdets grensesnitt" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105 +msgid "Show the average rating per item indication in the tag browser" +msgstr "" +"Vis den gjennomsnittlige bedømningen pr enhetsindikasjon i emneordsøket" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "Slå av UI animeringer" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Kopiert" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Kopier" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Kopier til utklippstavlen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Velg filer" +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 +msgid "Use library only" +msgstr "Bruk kun biblioteket" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 +msgid "User annotations generated from main library only" +msgstr "Brukerkommentaer genereres kun fra hovedbiblioteket" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 +msgid "No books selected" +msgstr "Ingen bøker ble valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 +msgid "No books selected to fetch annotations from" +msgstr "Ingen bøker er valgt for å hente kommentarer fra" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 +msgid "Merging user annotations into database" +msgstr "Slå sammen brukerkommentarer til databasen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 +msgid "%s
      Last Page Read: %d (%d%%)" +msgstr "%s
      Siste side lest: %d (%d%%)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 +msgid "%s
      Last Page Read: Location %d (%d%%)" +msgstr "%s
      Plassering av siste side lest%d (%d%%)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 +msgid "Location %d • %s
      %s
      " +msgstr "Plassering %d • %s
      %s
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 +msgid "Page %d • %s
      " +msgstr "Side %d • %s
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 +msgid "Location %d • %s
      " +msgstr "Plassering %d • %s
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 +msgid "How many empty books?" +msgstr "Hvor mange tomme bøker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 +msgid "How many empty books should be added?" +msgstr "Hvor mange tomme bøker skal legges til?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 +msgid "Uploading books to device." +msgstr "Laster opp bøker til enheten." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 +msgid "Books" +msgstr "Bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +msgid "EPUB Books" +msgstr "EPUB bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +msgid "LRF Books" +msgstr "LRF bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +msgid "HTML Books" +msgstr "HTML-bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +msgid "LIT Books" +msgstr "LIT bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +msgid "MOBI Books" +msgstr "MOBI bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +msgid "Topaz books" +msgstr "Topaz-bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +msgid "Text books" +msgstr "Tekst bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 +msgid "PDF Books" +msgstr "PDF-bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 +msgid "Comics" +msgstr "Tegneserier" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 +msgid "Archives" +msgstr "Arkiver" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 +msgid "Supported books" +msgstr "Støttede bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 +msgid "Merged some books" +msgstr "Slått sammen noen bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 +msgid "" +"Some duplicates were found and merged into the following existing books:" +msgstr "" +"Noen duplikater ble funnet og slått sammen til følgende eksisterende bøker:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 +msgid "Failed to read metadata" +msgstr "Kunne ikke lese metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 +msgid "Failed to read metadata from the following" +msgstr "Kunne ikke lese metadata fra følgende" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "Add to library" +msgstr "Legg til i biblioteket" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 +msgid "No book selected" +msgstr "Ingen bøker ble valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "No book files found" +msgstr "Ingen bokfiler ble funnet" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 +msgid "Cannot delete" +msgstr "Kan ikke fjerne" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 +msgid "Choose formats to be deleted" +msgstr "Velg formater som skal fjernes" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 +msgid "Choose formats not to be deleted" +msgstr "Velg formatet ikke til å slettes" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 +msgid "Cannot delete books" +msgstr "Kan ikke slette bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 +msgid "No device is connected" +msgstr "Ingen enheter er koblet til" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 +msgid "Main memory" +msgstr "Hovedminne" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 +msgid "Storage Card A" +msgstr "Lagring Kort A" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 +msgid "Storage Card B" +msgstr "Lagring Kort B" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 +msgid "No books to delete" +msgstr "Ingen bøker å slette" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 +msgid "None of the selected books are on the device" +msgstr "Ingen av de valgte bøkene finnes på enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 +msgid "Deleting books from device." +msgstr "Sletter bøker fra enheten." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 +msgid "" +"The selected books will be permanently deleted and the files removed " +"from your computer. Are you sure?" +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/actions.py:586 +msgid "" +"The selected books will be permanently deleted from your device. Are " +"you sure?" +msgstr "" +"De valgte bøkene vil bli slettet peremanent fra enheten. Er du sikker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 +msgid "Cannot download metadata" +msgstr "Kan ikke laste ned metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 +msgid "social metadata" +msgstr "sosiale metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "covers" +msgstr "Omslag" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "metadata" +msgstr "metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 +msgid "Downloading %s for %d book(s)" +msgstr "Laster ned %s for %d bok(bøker)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 +msgid "Failed to download some metadata" +msgstr "Klarte ikke å laste ned en del av metadataene" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 +msgid "Failed to download metadata for the following:" +msgstr "Kunne ikke laste ned metadata for følgende:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 +msgid "Failed to download metadata:" +msgstr "Kunne ikke laste ned metadata:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 +#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 +msgid "Error" +msgstr "Feil" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 +msgid "Cannot edit metadata" +msgstr "Kan ikke redigere metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 +msgid "Cannot merge books" +msgstr "Kan ikke slå sammen bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 +msgid "At least two books must be selected for merging" +msgstr "Minst to bøker må velges for å slå sammen bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 +msgid "" +"All book formats and metadata from the selected books will be added to the " +"first selected book.

      The second and subsequently selected " +"books will not be deleted or changed.

      Please confirm you want to " +"proceed." +msgstr "" +"Alle bokformater og metadata fra de valgte bøkene vil bli lagt til " +"første valgte bok..

      Den andre og påfølgende valgte bøker vil " +"ikke bli slettet eller endret.

      Vennligst bekreft at du ønsker å " +"fortsette." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 +msgid "" +"All book formats and metadata from the selected books will be merged into " +"the first selected book.

      After merger the second and " +"subsequently selected books will be deleted.

      All book formats " +"of the first selected book will be kept and any duplicate formats in the " +"second and subsequently selected books will be permanently deleted " +"from your computer.

      Are you sure you want to proceed?" +msgstr "" +"Alle bokformater og metadata fra de valgte bøkene vil bli slått sammen med " +"første valgte bok.

      Etter sammenslåing vil andre og påfølgende " +"valgte bøker bli slettet.

      Alle bokformater for første valgte " +"bok vil bli beholdt og øvrige duplikatformater i den andre og påfølgende " +"valgte bøker vil bli slettet permanent fra din datamaskin.

      Er " +"du sikker på at duvil fortsette?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 +msgid "" +"You are about to merge more than 5 books. Are you sure you want to " +"proceed?" +msgstr "" +"Du er i ferd med å slå sammen fler enn 5 bøker. Er du sikker på at du " +"ønsker å fortsette?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 +msgid "Cannot save to disk" +msgstr "Kan ikke lagre til disk" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 +msgid "Choose destination directory" +msgstr "Velg mottaksmappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 +msgid "Error while saving" +msgstr "Feil ved lagring" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 +msgid "There was an error while saving." +msgstr "En feil oppsto ved lagring" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 +msgid "Could not save some books" +msgstr "Kunne ikke lagre enkelte bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 +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/actions.py:943 +msgid "No books selected to generate catalog for" +msgstr "Ingen bøker ble valgt for å produsere kataloger" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 +msgid "Generating %s catalog..." +msgstr "Produserer %s katalog..." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 +msgid "No books found" +msgstr "Ingen bøker ble funnet" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 +msgid "" +"No books to catalog\n" +"Check exclude tags" +msgstr "" +"Ingen bøker til katalog\n" +"Sjekk utelatte emneord" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 +msgid "Catalog generated." +msgstr "Katalog produsert." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 +msgid "Export Catalog Directory" +msgstr "Eksporter katalogdirektorat" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 +msgid "Select destination for %s.%s" +msgstr "Velg plassering for %s.%s" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 +msgid "Fetching news from " +msgstr "Skaffer nyheter fra " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 +msgid " fetched." +msgstr " funnet." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 +msgid "Cannot convert" +msgstr "Kan ikke konvertere" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 +msgid "Starting conversion of %d book(s)" +msgstr "Starter konverteringen av %d boken(bøkene)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 +msgid "Cannot view" +msgstr "Kan ikke vise" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 +msgid "Choose the format to view" +msgstr "Velg format som skal vises" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 +msgid "Multiple Books Selected" +msgstr "Flere bøker ble valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 +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 "" +"Du forsøker å åpne %d bøker. Åpner du for mange bøker på en gang kan dette " +"gjøre systemet tregt og påvirke hastigheten til datamaskinen. Når du har " +"startet denne prosessen, kan den ikke stanses før den er fullført. Ønsker du " +"å fortsette?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 +msgid "Cannot open folder" +msgstr "Kan ikke åpne folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 +msgid "%s has no available formats." +msgstr "%s har ikke tilgjengelig formater." + #: /home/kovid/work/calibre/src/calibre/gui2/add.py:54 msgid "Searching in" msgstr "Søker i" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Legger til..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Søker i alle undermapper..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Feil i stien" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:252 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "Den spesifiserte mappen kunne ikke prosesseres" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Ingen bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:257 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1822 -msgid "No books found" -msgstr "Ingen bøker ble funnet" - -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Lagt til" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "Kunne ikke legge til" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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." @@ -2919,11 +3500,11 @@ msgstr "" "Legg til bøker prosessen ser ut til å være låst. Forsøk å re-starte calibre " "og legg til færre bøker av gangen, til du finner problemboka." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Duplikater funnet!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -2931,18 +3512,228 @@ msgstr "" "Bøker med den samme tittelen som den følgende finnes allerede i databasen. " "Legg dem til allikevel?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "Legger inn duplikater..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:419 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Lagrer" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:472 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Lagret" +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:57 +msgid "Searching for sub-folders" +msgstr "Søker etter undermapper" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:62 +msgid "Searching for books" +msgstr "Søker etter bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:74 +msgid "Looking for duplicates based on file hash" +msgstr "Ser etter duplikater basert på en filstreng" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:65 +msgid "Choose root folder" +msgstr "Velg rotmappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:137 +msgid "Invalid root folder" +msgstr "Ugyldig rotmappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:138 +msgid "is not a valid root folder" +msgstr "er ikke en gyldig rotmappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:148 +msgid "Add books to calibre" +msgstr "Legge bøker til calibre" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:21 +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:57 +#: /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:49 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 +msgid "WizardPage" +msgstr "Veiviser-side" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:22 +msgid "Scanning root folder for books" +msgstr "Skanner rotfolderen for bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:23 +msgid "This may take a few minutes" +msgstr "Dette kan ta noen minutter" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:58 +msgid "Choose the location to add books from" +msgstr "Velg lokalisering du vil legge til bøker fra" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:59 +msgid "Select a folder on your hard disk" +msgstr "Velg en mappe på harddisken din" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:60 +msgid "" +"

      calibre can scan your computer for existing books automatically. These " +"books will then be copied into the calibre library. This wizard will " +"help you customize the scanning and import process for your existing book " +"collection.

      \n" +"

      Choose a root folder. Books will be searched for only inside this folder " +"and any sub-folders.

      \n" +"

      Make sure that the folder you chose for your calibre library is " +"not under the root folder you choose.

      " +msgstr "" +"

      calibre kan skanne datamaskinen din for eksiterende bøker automatisk. " +"Disse bøkene vil deretter bli kopiert til calibre biblioteket. Denne " +"hjelpefunksjonen vil hjelpe deg med å tilpasse skanningen og importprosessen " +"for din eksiterende boksamling.

      \n" +"

      Velg en rotmappe. Det vil kun bli foretatt søk innenfor denne mappen og " +"dens underfoldere.

      \n" +"

      Forsikre deg om at folderen du velger som calibre-bibliotek ikke " +"er en undermappe av rotmappen du velger.

      " + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:63 +msgid "&Root folder:" +msgstr "&Rotmappe:" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:64 +msgid "" +"This folder and its sub-folders will be scanned for books to import into " +"calibre's library" +msgstr "" +"Denne mappen og dens undermapper vil bli skannet for bøker som skal " +"importeres til calibres bibliotek" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:66 +#: /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/look_and_feel_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:166 +#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:77 +#: /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:254 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:265 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 +msgid "..." +msgstr "..." + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:67 +msgid "Handle multiple files per book" +msgstr "Håndtere flere filer pr bok" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:68 +msgid "" +"&One book per folder, assumes every ebook file in a folder is the same book " +"in a different format" +msgstr "" +"&En bok per folder, vil bli forstått av systemet som alle ebokfiler i en " +"folder er den samme boken i forskjellig format" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:69 +msgid "" +"&Multiple books per folder, assumes every ebook file is a different book" +msgstr "" +"&Flere bøker pr folder, blir forstått av systemet at hver ebokfil er en " +"annen bok" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 +msgid "Path" +msgstr "Bane" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 +msgid "Formats" +msgstr "Formater" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 +msgid "Collections" +msgstr "Samlinger" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 +msgid "Click to open" +msgstr "Klikk for å åpne" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 +msgid "None" +msgstr "Ingen" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 +msgid "Click to open Book Details window" +msgstr "Klikk for å åpne bokdetaljer-vinduet" + #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml.py:16 msgid "CSV/XML Options" msgstr "CSV/XML Valg" @@ -2988,21 +3779,21 @@ msgstr "utdata" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:38 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:42 #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/save_template_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106 @@ -3019,9 +3810,9 @@ msgid "E-book options" msgstr "E-bok valg" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:958 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:976 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Katalog" @@ -3199,46 +3990,6 @@ msgstr "" "brukes for konverteringsparameterene, som for eksempel innholdsfortegnelse " "og kapitteldeteksjon." -#: /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/look_and_feel_ui.py:125 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:507 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:521 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:522 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:538 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 -#: /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:364 -#: /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:389 -#: /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:393 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 -#: /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 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 -#: /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:365 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:379 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:381 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 -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 " @@ -3267,7 +4018,7 @@ msgstr "Ingen &SVG omslag" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:52 msgid "Preserve cover &aspect ratio" -msgstr "" +msgstr "Behold omslags og &aspektområdet" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:53 msgid "Split files &larger than:" @@ -3388,15 +4139,15 @@ msgstr "Kontroller utseende til utdataene" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:30 msgid "Original" -msgstr "" +msgstr "Original" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:31 msgid "Left align" -msgstr "" +msgstr "Venstrejuster" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:32 msgid "Justify text" -msgstr "" +msgstr "Juster tekst" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:120 msgid "&Disable font size rescaling" @@ -3455,7 +4206,7 @@ msgstr "Ekstra &CSS" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:136 msgid "&Transliterate unicode characters to ASCII" -msgstr "" +msgstr "&Translitterær oversetning fra unicode tegnsett til ASCII" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137 msgid "Insert &blank line" @@ -3463,7 +4214,7 @@ msgstr "Sett inn &blank linje" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:138 msgid "Keep &ligatures" -msgstr "" +msgstr "Behold &bindinger" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:19 msgid "LRF Output" @@ -3531,77 +4282,77 @@ msgstr "" "Legg inn metadata. Utdatafilen vil inneholde så mange av disse metadataene " "som mulig." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Velg omslag for " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Kan ikke lese" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Feil under lesing av fil" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 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:185 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " er ikke et tillatt bilde" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Bokomslag" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Bruk omslag fra &kilde fil" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /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:403 msgid "Change &cover image:" msgstr "Bytt &omslagsbilde:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /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:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +msgid "Use cover from &source file" +msgstr "Bruk omslag fra &kilde fil" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Tittel: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Change the title of this book" msgstr "Forandre bokens tittel" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 -#: /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:360 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "&Author(s): " msgstr "&Forfatter(e): " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "Forfatter So&rtering:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" @@ -3609,20 +4360,20 @@ msgstr "" "Endre forfatteren(e) til denne boken. Ved flere forfattere må disse listes " "adskilt av komma." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /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:369 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "&Publisher: " msgstr "&Forlegger: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "Ta&gger: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:154 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

      They can be any words or phrases, separated by commas." @@ -3630,23 +4381,23 @@ msgstr "" "Taggene kategoriserer boken. Dette er spesielt nytting når man søker. " "

      De kan være ethvert ord eller fraser, separert ved kommategn." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Series:" msgstr "&Serier:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 +#: /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 "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:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Bok " @@ -3731,12 +4482,12 @@ msgid "PDB Input" msgstr "PDB inndata" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Behandle hver &linje som avsnitt" #: /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:44 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "Forutsett utskriftsformatering" @@ -3764,32 +4515,31 @@ msgstr "Ingen &Bilder" msgid "PDF Output" msgstr "PDF Utdata" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:40 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:43 msgid "&Paper Size:" msgstr "&Papirstørrelse:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:44 msgid "&Orientation:" msgstr "&Orientering" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:45 +msgid "Preserve &aspect ratio of cover" +msgstr "Behold &aspektområdet til omslaget" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output.py:14 msgid "RB Output" msgstr "RB Utdata" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:75 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2067 -msgid "Choose the format to view" -msgstr "Velg format som skal vises" - -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "Cannot build regex using the GUI builder without a book." msgstr "Kan ikke bygge regex med GUI bygger uten en bok." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "No formats available" msgstr "Ingen formater tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:100 msgid "Open book" msgstr "Åpen bok" @@ -3864,12 +4614,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:71 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Ugyldig regulæruttrykk: %s" @@ -3953,11 +4703,11 @@ msgstr "TOC &Filter:" msgid "TXT Input" msgstr "TXT Inndata" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "Prosesser ved å benytte markdown" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

      Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" "Legg aldri en liste over innhold til utdata-teksten når merking utføres" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 +msgid "Preserve &spaces" +msgstr "Behold &mellomrom" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:16 msgid "TXT Output" msgstr "TXT Utdata" @@ -4084,203 +4838,316 @@ msgstr "" "om avansert bruk av XPath, se XPath Tutorial." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:38 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:119 +msgid "Cover browser could not be loaded" +msgstr "Omslagssøker kunne ikke starte" + +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:171 +msgid "Browse by covers" +msgstr "Søk blant omslag" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:77 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:242 +msgid "Undefined" +msgstr "Ikke definert" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:133 +msgid "Yes" +msgstr "Ja" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:134 +msgid "No" +msgstr "Nei" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:115 +msgid "star(s)" +msgstr "Stjerne(r)" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:116 +msgid "Unrated" +msgstr "Ikke rangert" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr " indeks:" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "Automatisk nummererte bøker i denne serien" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 +msgid "Remove all tags" +msgstr "Fjerne alle emneord" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 +msgid "tags to add" +msgstr "emneord som skal legges til" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 +msgid "tags to remove" +msgstr "emneord som skal fjernes" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "Ingen detaljer tilgjengelig." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "Enheten er ikke lenger koblet til." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "Få informasjon om enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 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:229 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "Motta kommentar fra enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" msgstr "Send metadata til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "Overfør samlingene til enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "Last opp %d bøker til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "Slett bøker fra enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "Last ned bøker fra enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "Se min bok på enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:296 -msgid "and delete from library" -msgstr "og slett fra biblioteket" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "Sett stadart til send til enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:324 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:331 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:333 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "-post til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 +msgid " and delete from library" +msgstr " og slett fra biblioteket" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Send til hovedminnet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Send til lagringskort A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:350 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Send til lagringskort B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:360 -msgid "Send specific format to main memory" -msgstr "Send spesifisert format til hovedminnet" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 +msgid "Main Memory" +msgstr "Hovedminne" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:362 -msgid "Send specific format to storage card A" -msgstr "Send spesifisert format til lagringskort A" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 +msgid "Send and delete from library" +msgstr "Overfør og slett fra biblioteket" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:364 -msgid "Send specific format to storage card B" -msgstr "Send spesifisert format til lagringskort B" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 +msgid "Send specific format" +msgstr "Overfør spesifisert format" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 +msgid "Connect to folder" +msgstr "Knytt til mappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "Koble til iTunes" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "Koble fra enhet" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "Hent kommentarer (eksperimentell)" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 +msgid "Error communicating with device" +msgstr "Feil ved kommunikasjonen med enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 +msgid "Select folder to open as device" +msgstr "Velg mappe som skal åpnes som enhet" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 +msgid "Failed" +msgstr "Mislykket" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 +msgid "Error talking to device" +msgstr "Feil ved komminikasjonen med enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 +msgid "" +"There was a temporary error talking to the device. Please unplug and " +"reconnect the device and or reboot." +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/device.py:753 +msgid "Device: " +msgstr "Enhet: " + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 +msgid " detected." +msgstr " Funnet" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 +msgid "Connected " +msgstr "Tilkoblet " + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "Velg for å sende" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "Velg format for å sende til enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "Ingen enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 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:534 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Ingen kort" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:535 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 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:581 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "E-bok" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "Vedlagt finner du e-boken" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:585 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "av" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "i %s format" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Sender e-post til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:629 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:636 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:788 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:904 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:911 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "Ingen passende formater" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 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:637 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 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:655 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "Kunne ikke sende bøker via e-post" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 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:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "Sent som e-post:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "Nyheter:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "Vedlagt følger" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:699 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Sent nyheter til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:729 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:789 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:905 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 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:758 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Sender kataloger til enheten." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:819 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "Sender nyheter til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "Sender bøker til enheten." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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." @@ -4289,49 +5156,33 @@ 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:960 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "Ikke plass på enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:961 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

      Cannot upload books to device there is no more free space available " msgstr "" "

      Kan ikke laste opp bøker til enheten da det ikke er mer ledig plass " "tilgjengelig " -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 msgid "Select available formats and their order for this device" msgstr "Velg tilgjengelige formater og deres rekkefølge for denne enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:82 msgid "Use sub directories" msgstr "Bruk underkataloger" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83 +msgid "Use author sort for author" +msgstr "Benytt forfattersortering for forfatter" + +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85 msgid "Save &template:" msgstr "Lagre &mal:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:373 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1101 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 -msgid "Path" -msgstr "Bane" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:372 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Formats" -msgstr "Formater" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:68 msgid "Fit &cover to view" msgstr "Tilpass &omslag for visning" @@ -4379,11 +5230,11 @@ msgstr "katalogvalg" msgid "Choose Format" msgstr "Velg format" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:33 msgid "Set defaults for conversion of comics (CBR/CBZ files)" msgstr "Sett standard for konvertering av tegneserier (CBR/CBZ filer)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 msgid "Set options for converting %s" msgstr "Sett valg for konvertering %s" @@ -4399,15 +5250,19 @@ msgstr "&Forfatter(e)" msgid "&Profile:" msgstr "&Profil:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog_ui.py:41 +msgid "Edit Comments" +msgstr "Rediger kommentarer" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "%(plugin_type)s %(plugins)s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "Programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " @@ -4415,23 +5270,23 @@ msgstr "" "\n" "Tilpasning: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "konvertering" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Generell" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Brukergrensesnitt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Legg til/Lagre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" @@ -4439,11 +5294,11 @@ msgstr "" "E-post\n" "Forsendelse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Avansert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -4451,23 +5306,23 @@ msgstr "" "Innhold\n" "Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Autosend" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "E-Post" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:221 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "Formater til e-post. Det første samsvarende formatet vil bli sendt." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
      to this email " "address (provided it is in one of the listed formats)." @@ -4475,149 +5330,178 @@ msgstr "" "Dersom merket av, vil nedlastede nyheter automatisk bli sent
      til denne e-" "postadressen (dersom det er i ett av de opplistede formatene)." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:296 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "ny e-postadresse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:472 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +msgid "Wide" +msgstr "Bred" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 +msgid "Narrow" +msgstr "Reduser" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "Valgt systemport" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:473 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " -"port. You operating system may not allow the server to run on this " +"port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -"Verdien %d du valgte som innholdserverport er en systemport. " -"Operativsystemet ditt vil kanskje ikke tillate at serveren kjører " -"under denne porten. For å være sikker kan du velge et portnummer som er " -"høyere enn 1024." +"Verdien %d som du har valgt til innholdets server-port er en system-" +"port. Ditt operativsystem vil kanskje ikke tillate serveren å kjøre " +"via denne porten. For å være sikker, velg et portnummer som er høyere enn " +"1024." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:492 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1538 -#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 -msgid "Error" -msgstr "Feil" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:493 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "Kunne ikke installere kommandolinjeverktøy." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "Kommandolinjeverktøy installert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "Kommandolinjeverktøy ble installert i" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" "Dersom du flytter calibre.app, må du re-installere kommandolinjeverktøyene." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "Ingen gyldig programtillegsbane" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s er ikke en gyldig bane for programtillegget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Velg programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Programtillegget kan ikke slåes av" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "Programtillegget: %s kan ikke slåes av" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Programtillegg ikke egendefinert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Programtillegg: %s trenger ikke å egendefineres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "Tilpass" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "Kan ikke fjerne innebygget programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" " kan ikke fjernes. Dette er et innebygget programtillegg. Forsøk å slå det " "av istedet." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 +msgid "You must select a column to delete it" +msgstr "Du må velge en kolonne for å slette den" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +msgid "The selected column is not a custom column" +msgstr "Den valgte kolonnen er ikke en tilpasset kolonne" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 +msgid "Are you sure?" +msgstr "Er du sikker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 +msgid "Do you really want to delete column %s and all its data?" +msgstr "Ønsker du virkelig å slette kolonne %s og alle dataene i den?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Feil-logg:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:663 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "tilgangslogg:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:701 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "Kunne ikke starte innholdsserveren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:715 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "Velg lokalisasjon for bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:723 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Ugyldig størrelse" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "Størrelsen %s er ugyldig. må være i formatet breddexhøyde" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:778 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:783 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Ugyldig lokalisering av databasen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:779 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Ugyldig lokalisering av databasen " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:780 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
      Must be a directory." msgstr "
      Må være en katalog." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:784 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
      Cannot write to " msgstr "Ugyldig lokalisering av databasen.
      Kan ikke skrive til " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 +msgid "Must restart" +msgstr "Omstart behøves" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 +msgid "" +"The changes you made require that Calibre be restarted. Please restart as " +"soon as practical." +msgstr "" +"Endringene du har utført krever omstart av Calibre. Vennligst kjør omstart " +"så snart du kan." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "Sjekker databasens integritet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:838 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "Kunne ikke sjekke databasens integritet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:843 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "Noen uoverensstemmelser ble funnet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:844 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4629,11 +5513,11 @@ msgstr "" "dem manuelt. Dette kan skje dersom du har manipulert filene i " "bibliotekfolderen direkte." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "TabWidget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " @@ -4643,11 +5527,11 @@ msgstr "" "lagt til. Calibre kan enten lese metadata fra filens innhold, eller fra " "filnavnet." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" msgstr "Les metadata kun fra &filnavn" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." @@ -4655,29 +5539,30 @@ msgstr "" "Bytt mellom fornavn og etternavn på forfatteren. Dette berører kun metadata " "fra filnavnet." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "&Bytt mellom forfatterens fornavn og etternavn" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " "punctuation, case, etc. Author match is exact." msgstr "" -"Dersom en eksisterende bok med likelydende tittel og forfatter er funnet og " -"som mangler formatet som etterspørres, vil formatet legges til \n" -"den eksisterende boken, fremfor å lage en ny oppføring. Dersom den " -"eksisterende boken allerede har formatet, omgås denne i stillhet.\n" +"Dersom en eksisterende bok med tilsvarende tittel og forfatter blir funnet " +"og ikke har det formatet du har lagt til, vil formatet bli lagt\n" +"til den eksisterende boken fremfor å lage en tilgang. Dersom den " +"eksisterende boken allerede har dette formatet, vil det bli forbigått uten " +"varsler.\n" "\n" -"Titteltreff ignorerer ledende ubestemte artikler (\"en\", \"ei\", \"ett\"), " -"punktumer, store bokstaver, osv. Forfatter stemmer helt og fullt." +"Titteltreff ignorerer ledende udefinerte artikler /\"the\", \"a\", \"an\"). " +"punktum, sak, osv. Forfattertreff er nøyaktig." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" @@ -4685,15 +5570,15 @@ msgstr "" "Dersom bøker med likelydende titler og forfattere finnes, &slå filene sammen " "til ett automatisk" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" msgstr "&Konfigurer metadata fra filnavn" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "&Legg til bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" @@ -4701,43 +5586,65 @@ msgstr "" "Her kan du kontrollere hvordan Calibre skal lagre bøkene dine når du klikker " "på Lagre til Lagringsenhetknappen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Lagre &omslag separat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" msgstr "Oppdater &metadata i lagrede kopier" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" msgstr "Lagre metadata i &OPF fil" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "Konverter ikke-engelske bokstaver til &engelskspråklige bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "Formater &datoer som:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "Fil &format som skal lagres:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Erstatt mellomrom med &understrek" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Forandre stier til &små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "&Lagrer bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "Behold enhetssamlinger." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" +"Om merket av, vil samlinger ikke bli slettet, selv om en bok med endrede " +"metadata er sent på nytt og samlingen ikke finnes i bokens metadata. I " +"tillegg vil endring av samlingen i enhetens leser bli slått på. Om ikke " +"merket av, vil samlingen bare reflektere metadata som finnes i calibre-" +"biblioteket." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " @@ -4748,17 +5655,18 @@ msgstr "" "individuelle enheter ved å tilpasse enhetens programtillegg for grensesnitt " "under: Innstillinger->Programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "Sender til &enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:504 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Innstillinger" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" @@ -4766,28 +5674,28 @@ msgstr "" "&Lokalisering av e-bøker (e-bøkene er lagret i foldere sortert etter " "forfattere og metadata er lagret i filen metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Søk etter den nye databaselokaliseringen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Varsle når &ny versjon er tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" -msgstr "Last ned &sosiale metadata (emneord/bedømminger/osv.) som standard" +msgstr "Last ned &sosiale metadata (emneord/vurdering/osv.) som standard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" "&Overskriv forfatter og tittel med standard når du laster ned metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "Standard netttilgang &tidsavbrudd:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:512 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -4795,119 +5703,152 @@ msgstr "" "Legg inn standard for tidsavbrudd for nettverkstilgang (for eksempel all den " "tid vi går på nettet for å finne informasjon)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:513 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " sekunder" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:514 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Velg &språk (krever omstart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:515 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Vanlig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Høy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Lav" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "oppgave&prioritet:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:519 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Foretrukket &utdataformat:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Foretrukket &inndataformat:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "Bruk &Romerske tall for seriell numerering" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "Slå på oppgave&panelikonet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Vis &varsler i oppgavepanelet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +msgid "Show &splash screen at startup" +msgstr "Vis &splash bilde når enheten starter" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "Vis omslag &søk i eget vindu (krever omstart)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:527 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +msgid "Show &average ratings in the tags browser" +msgstr "Vis &gjennomsnittlig vurdering i emneordssøkeren" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "Søk mens du taster" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "Send nedlastede &nyheter til eBokleseren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:529 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "&Slett nyheter fra biblioteket når de automatisk sendes til leseren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "&Antall omslag som skal vises i søkemodus (krever omstart):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Verktøylinje" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Store" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Medium" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Små" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "&Knappestørrelse i verktøylinjen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "Vis &tekst i verktøylinjens knapper" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:537 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "Velg synlige &kolonner i bibliotekvisningsmodus" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:540 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 +msgid "Remove a user-defined column" +msgstr "Fjern en brukerdefinert kolonne" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +msgid "Add a user-defined column" +msgstr "Legg til en brukerdefinert kolonne" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +msgid "Edit settings of a user-defined column" +msgstr "Rediger innstillinger for en brukerdefinert kolonne" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "Bruk intern &leser for:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +msgid "User Interface &layout (needs restart):" +msgstr "Brukergrensesnitt &visning (krever omstart):" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" +"Slå av alle animeringer. Nyttig dersom du har en svak/eldre datamaskin." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "Slå av &animeringer" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "Legg til en e-postadresse til hvor du vil sende bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "&Legg til e-post" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Lag &standard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "&Fjern e-post" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:545 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" @@ -4917,32 +5858,32 @@ msgstr "" "automatisk bli sent til nedlastede nyheter til alle e-postadressende som har " "blitt merket av for autosend." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "&Maximum antall ventende arbeidsprosesser (omstart behøves):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "&Sjekk databasens integritet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "&Installer kommandolinjeverktøy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "Åpne Calibre&konfigurasjonsmappen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" "Begrens maksimalt antall samtidige oppgaver til verdien av CPU &cores" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "Feilsøking &enhetsgjenkjenning" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " @@ -4952,25 +5893,25 @@ msgstr "" "ved å benytte en nettleser fra hvilket som helst sted i verden. Enhver " "forandring av innstillingene vil taes ibruk etter en omstart av serveren." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "Server &port:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "&Brukernavn:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "&Passord:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -4978,7 +5919,7 @@ msgstr "" "Dersom du lar passordet stå tomt, vil enhver kunne gå inn i din boksamling " "ved å benytte web-brukergrensesnittet." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -4986,41 +5927,45 @@ msgstr "" "Maksimal størrelse (breddexhøyde) for å vise omslag. Større omslag vil bli " "re-dimensjonert. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "Maks. &omslagsstørrelse:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "&Vis passord" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "Maksimum &OPDS enheter per spørring:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +msgid "Max. OPDS &ungrouped items:" +msgstr "Maks OPDS &undergruppert innhold" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "&Start server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "St&op server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "&Test server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "Kjør server &automatisk ved oppstart" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Vis &serverlogger" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

      Remember to leave calibre running as the server only runs as long as " @@ -5037,7 +5982,7 @@ msgstr "" "din iPhone. Her skal myhostname være fullt kvalifisert vertsnavn eller IP-" "adressen til datamaskinen Calibre kjører på." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." @@ -5045,27 +5990,27 @@ msgstr "" "Her kan du skreddersy Calibres atferd ved å kontrollere hvilke " "programtillegg som skal benyttes." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Slå på/&Slå av programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "&Skreddersy programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&Fjern programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Legg til nytt programtillegg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "Programtillegg &fil" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&Legg til" @@ -5093,16 +6038,6 @@ msgstr "Benytt klammeparantes" msgid "Values can be edited" msgstr "Verdier kan redigeres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:133 -msgid "Yes" -msgstr "Ja" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:134 -msgid "No" -msgstr "Nei" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:135 msgid "Text" msgstr "Tekst" @@ -5112,8 +6047,11 @@ msgid "Number" msgstr "Nummer" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1162 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Dato" @@ -5129,6 +6067,145 @@ msgstr "Forklaringstekst lagt til i create_ct_column.py" msgid "Create and edit tag-based columns" msgstr "Lag og rediger emneordbaserte kolonner" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:19 +msgid "Text, column shown in the tag browser" +msgstr "Tekst, kolonne vist i emneordssøkeren" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:22 +msgid "Comma separated text, like tags, shown in the tag browser" +msgstr "Kommaseparert tekst, som emneord, vist i emneordssøkeren" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:25 +msgid "Long text, like comments, not shown in the tag browser" +msgstr "Lang tekst, som kommentarer, som ikke vises i emneordssøkeren" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "Tekstkolonne til bruk for serielignende informasjon" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 +msgid "Floating point numbers" +msgstr "Flytende pekenummer" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 +msgid "Integers" +msgstr "Heltall" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +msgid "Ratings, shown with stars" +msgstr "Vurdering, vist ved stjerner" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 +msgid "Yes/No" +msgstr "Ja/Nei" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 +msgid "No column selected" +msgstr "Ingen kolonne ble valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 +msgid "No column has been selected" +msgstr "Ingen kolonne har blitt valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 +msgid "Selected column is not a user-defined column" +msgstr "Valgte kolonne er ikke en brukerdefinert kolonne" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 +msgid "No lookup name was provided" +msgstr "Ingen oppslagsord er angitt" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 +msgid "" +"The label must contain only letters, digits and underscores, and start with " +"a letter" +msgstr "" +"Merkelappen kan kun inneholde bokstaver, tall og understreker, og må starte " +"med en bokstav" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 +msgid "No column heading was provided" +msgstr "Ingen kolonneoverskrift er angitt" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 +msgid "The lookup name %s is already used" +msgstr "Søkenavnet %s er allerede benyttet" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 +msgid "The heading %s is already used" +msgstr "Overskriften %s er allerede benyttet" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 +msgid "" +"The lookup name must be lower case and cannot contain \":\"s or spaces" +msgstr "" +"Søkenavnet må skrives med små bokstaver og kan ikke inneholde \".\" eller " +"mellomrom" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:117 +msgid "Create or edit custom columns" +msgstr "Lag eller rediger brukerdefinerte kolonner" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:102 +msgid "&Lookup name" +msgstr "&Søkenavn" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:103 +msgid "Column &heading" +msgstr "&Kolonneoverskrift" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:104 +msgid "" +"Used for searching the column. Must contain only digits and lower case " +"letters." +msgstr "" +"Brukes til å søke i kolonnen. Kan kun inneholde nummer og små bokstaver." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:105 +msgid "" +"Column heading in the library view and category name in the tag browser" +msgstr "" +"Kolonnenoverskrift i biblioteksvisning og kategorinavn i emneordssøkeren" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:106 +msgid "Column &type" +msgstr "&Kolonnetype" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:107 +msgid "What kind of information will be kept in the column." +msgstr "Den informasjonen som vil bli beholdt i kolonnen" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:108 +msgid "" +"

      Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " +"for year.

      \n" +"

      For example:\n" +"

        \n" +"
      • ddd, d MMM yyyy gives Mon, 5 Jan 2010
      • \n" +"
      • dd MMMM yy gives 05 January 10
      • \n" +"
      " +msgstr "" +"

      Datoformat. Bruk 1-4 'd's for dag, 1-4 'M's for måned, og 2 eller 4 'y' " +"for år.

      \n" +"

      Som eksempel:\n" +"

        \n" +"
      • ddd, d MMM yyyy viser Man, 5 Jan 2010
      • \n" +"
      • dd MMMM yy viser 05 Januar 10
      • \n" +"
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:114 +msgid "Use MMM yyyy for month + year, yyyy for year only" +msgstr "Bruk MMM yyyy for måned + år, yyyy kun for år" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:115 +msgid "Default: dd MMM yyyy." +msgstr "Standard: dd MMM yyyy." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:116 +msgid "Format for &dates" +msgstr "Datoformater" + #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/device_debug.py:21 msgid "Getting debug information" msgstr "Motta feilsøkingsinformasjon" @@ -5175,10 +6252,6 @@ msgstr "Tilgjengelige variabler:" msgid "Downloading social metadata, please wait..." msgstr "Laster ned sosiale metadata, vennligst vent..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 -msgid "Are you sure?" -msgstr "Er du sikker?" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:50 msgid "&Show this warning again" msgstr "&Vis dette varselet igjen" @@ -5187,40 +6260,61 @@ msgstr "&Vis dette varselet igjen" msgid "ERROR" msgstr "Feilmelding" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +msgid "Location" +msgstr "Lokalisering" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 +msgid "Format" +msgstr "Format" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 +msgid "Delete from device" +msgstr "Slett fra enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 +msgid "Author sort" +msgstr "Sortering blant forfattere" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 +msgid "Manage authors" +msgstr "Behandling av forfatterinformasjon" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Forfatter Sorter" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." msgstr "Finner metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" msgstr "Kunne ikke finne metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." msgstr "" "Nedlastingen av metadata ser ut til å ha låst seg. Forsøk igjen senere." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Advarsel" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" msgstr "Kunne ikke finne metadata fra:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" msgstr "Ingen metadata funnet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" @@ -5263,7 +6357,7 @@ msgstr "Velg boken som samsvarer mest med ditt eksemplar fra listen under" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:91 msgid "Download &social metadata (tags/rating/etc.) for the selected book" msgstr "" -"Last ned &sosiale metadata (emneord/bedømminger/osv.) for den valgte boken" +"Last ned &sosiale metadata (emneord/vurderinger/osv.) for den valgte boken" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:92 msgid "Overwrite author and title with author and title of selected book" @@ -5289,29 +6383,24 @@ msgstr "Vis oppgave&detaljer" msgid "Stop &all jobs" msgstr "Stopp &alle jobber" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:22 -msgid "Editing meta information for %d books" -msgstr "Redigering av metadata for %d bøker" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:24 +msgid "Editing meta information for %d books" +msgstr "Rediger metainformasjon for %d bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:157 msgid "Edit Meta information" msgstr "Rediger metainformasjon" -#: /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:355 -msgid "Meta information" -msgstr "Metainformasjon" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:144 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:159 msgid "A&utomatically set author sort" msgstr "A&utomatisk forfattersortering" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:160 msgid "Author s&ort: " msgstr "Forfatter s&orter: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -5319,55 +6408,55 @@ msgstr "" "Spesifiser hvordan forfatter(e) av denne boken skal sorteres. For eksempel " "Charles Dickens skal sorteres som Dickens, Charles." -#: /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:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 msgid "&Rating:" msgstr "&Bedømning" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:148 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:149 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 +#: /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 "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:150 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:165 msgid "No change" msgstr "Ingen endring" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 msgid " stars" msgstr " stjerner" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:168 msgid "Add ta&gs: " msgstr "Legg til ta&gger: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:155 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:156 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:171 +#: /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 "Open Tag Editor" msgstr "Åpne Tagg-redigering" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:157 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:172 msgid "&Remove tags:" msgstr "&Fjern emneord:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:173 msgid "Comma separated list of tags to remove from the books. " msgstr "Kommaseparert liste av emneord som skal fjernes fra bøkene. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:162 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:177 msgid "Remove &format:" msgstr "Fjern &format:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:178 msgid "&Swap title and author" msgstr "&Bytt mellom tittel og forfatter" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:179 msgid "" "Selected books will be automatically numbered,\n" "in the order you selected them.\n" @@ -5379,9 +6468,29 @@ msgstr "" "Så drsom du veger bok A og deretter bok B,\n" "vil bok A få serienummeret 1, og bok B vil får serienummer 2." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:168 -msgid "Automatically number books in this series" -msgstr "Automatisk nummererte bøker i denne serien" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:184 +msgid "" +"Remove stored conversion settings for the selected books.\n" +"\n" +"Future conversion of these books will use the default settings." +msgstr "" +"Fjern lagrede konverteringsinnstillinger for de valgte bøkene.\n" +"\n" +"Fremtidige konverteringsinnstillinger vil bruke standard innstillinger." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:187 +msgid "Remove &stored conversion settings for the selected books" +msgstr "Slett &lagrede konverteringsinnstillinger for de valgte bøkene" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409 +msgid "&Basic metadata" +msgstr "&Grunnleggende metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 +msgid "&Custom metadata" +msgstr "&Brukervalgte metadata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 msgid "Not a valid picture" @@ -5391,11 +6500,6 @@ msgstr "Ikke gylding bilde" msgid "Choose formats for " msgstr "Velg formater for " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1284 -msgid "Books" -msgstr "Bøker" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:165 msgid "No permission" msgstr "Ingen tilatelse" @@ -5434,142 +6538,156 @@ msgstr "Omslaget i %s format er ikke gyldig" 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:413 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:418 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:439 msgid "This ISBN number is valid" msgstr "Dette ISBN-nummeret er gyldig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:421 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:442 msgid "This ISBN number is invalid" msgstr "Dette ISBN-nummeret er ugyldig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:521 +msgid "Cannot use tag editor" +msgstr "Kan ikke bruke verktøy for emneordredigering" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:522 +msgid "The tags editor cannot be used if you have modified the tags" +msgstr "" +"Verktøyet for emneordredigering kan ikke benyttes dersom du har modifisert " +"emneordene" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:542 msgid "Downloading cover..." msgstr "Laster ned omslag..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:529 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:534 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:540 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:565 msgid "Cannot fetch cover" msgstr "Kan ikke hente omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:530 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:566 msgid "Could not fetch cover.
      " msgstr "Kunne ikke hente omslag.
      " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "Tidsavbrudd for nedlasting." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 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:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Dårlig omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 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:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "Det oppsto feil" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" msgstr "Det oppsto feil ved nedlastingen av sosiale metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" msgstr "Kan ikke hente metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 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:681 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "Ingen adgang" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 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:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 msgid "Edit Meta Information" msgstr "Rediger metadata" -#: /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:362 +msgid "Meta information" +msgstr "Metainformasjon" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid "Swap the author and title" msgstr "Bytt mellom forfatter og tittel" -#: /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:368 msgid "Author S&ort: " msgstr "Forfatter S&orter: " -#: /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:370 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:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 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:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" msgstr "Publisert&t" -#: /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:390 msgid "dd MMM yyyy" msgstr "ddMMMyyyy" -#: /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:391 msgid "&Date:" msgstr "&Dato:" -#: /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:392 msgid "&Comments" msgstr "&Sammendrag" -#: /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:393 msgid "&Fetch metadata from server" msgstr "&Hent metadata fra server" -#: /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:394 msgid "Available Formats" msgstr "Tilgjengelige formater" -#: /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:395 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:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 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:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 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:394 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 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:399 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "Tilbakestill omslaget til standard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Last ned &omslag" @@ -5581,49 +6699,83 @@ msgstr "Passord kreves" msgid "Aborting..." msgstr "Avbryter..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:54 +msgid "" +"The current saved search will be permanently deleted. Are you sure?" +msgstr "" +"Gjeldende lagrede søk vil bli slettet permanent. er du sikker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:83 +msgid "Saved Search Editor" +msgstr "Redigeringsverktøy for lagrede søk" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:84 +msgid "Saved Search: " +msgstr "Lagret søk: " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:85 +msgid "Select a saved search to edit" +msgstr "Velg et lagret søk som skal redigeres" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:86 +msgid "Delete this selected saved search" +msgstr "Slett gjeldende lagrede søk" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 +msgid "Enter a new saved search name." +msgstr "Legg inn et nytt lagret søkenavn" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 +msgid "Add the new saved search" +msgstr "Legg til det nye lagrede søket" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 +msgid "Change the contents of the saved search" +msgstr "Forandre innholdet i det lagrede søket" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:119 msgid "Need username and password" msgstr "Trenger brukernavn og passord" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:120 msgid "You must provide a username and/or password to use this news source." msgstr "" "Du må oppgi et brukernavn og/eller passord for å benytte denne nye kilden." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:171 msgid "Created by: " msgstr "Laget av: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:178 msgid "Last downloaded: never" msgstr "Sist lastet ned: aldri" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:193 msgid "%d days, %d hours and %d minutes ago" msgstr "%d dager, %d timer og %d minutter siden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:195 msgid "Last downloaded" msgstr "Sist lastet ned" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:192 msgid "Schedule news download" msgstr "Planlegg neste nedlasting" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:219 msgid "Add a custom news source" msgstr "Legg til en egendefinert nyhetskilde" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:224 msgid "Download all scheduled new sources" msgstr "Last ned alle planlagte nye kilder" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:322 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:321 msgid "No internet connection" msgstr "Ingen forbindelse med Internet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:322 msgid "Cannot download news as no internet connection is active" msgstr "" "Kan ikke laste ned nyheter da forbindelsen med Internet ikke er aktiv" @@ -5826,11 +6978,81 @@ msgstr "" msgid "Choose formats" msgstr "Velg formater" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:76 +msgid "Authors" +msgstr "Forfattere" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:107 +msgid "Publishers" +msgstr "Forlag" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:110 +msgid " (not on any book)" +msgstr " (ikke i noen av bøkene)" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:162 +msgid "" +"The current tag category will be permanently deleted. Are you sure?" +msgstr "" +"Den gjeldende emneordkategorien vil bli slettet permanent. Er du " +"sikker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:153 +msgid "User Categories Editor" +msgstr "Verktøy for redigering av brukerkategorier" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:154 +msgid "A&vailable items" +msgstr "T&ilgjengelig innhold" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:155 +msgid "Apply tags to current tag category" +msgstr "Legg inn emneord til gjeldende kategori" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:157 +msgid "A&pplied items" +msgstr "Tillagt innhold" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:158 +msgid "Unapply (remove) tag from current tag category" +msgstr "Fjern emneord fra gjeldende emneordkategori" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:160 +msgid "Category name: " +msgstr "Kategorinavn: " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:161 +msgid "Select a category to edit" +msgstr "Velg en kategori som skal redigeres" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:162 +msgid "Delete this selected tag category" +msgstr "Slett den valgte emneordkategorien" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:164 +msgid "Enter a new category name. Select the kind before adding it." +msgstr "Legg til et nytt kategorinavn. Velg type før du legger det til." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:165 +msgid "Add the new category" +msgstr "Legg til en ny kategori" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:167 +msgid "Category filter: " +msgstr "Kategorifilter: " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:168 +msgid "Select the content kind of the new category" +msgstr "Velg type innhold for den nye kategorien" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "Er du sikker?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:69 msgid "" "The following tags are used by one or more books. Are you certain you want " "to delete them?" @@ -5883,6 +7105,61 @@ msgid "Add tag to available tags and apply it to current book" msgstr "" "Legg nye emneord til tilgjengelige emneord og legg dem til gjeldende bok" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +msgid "Item is blank" +msgstr "Inneholder ingenting" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 +msgid "An item cannot be set to nothing. Delete it instead." +msgstr "" +"Innholdet kan ikke stilles inn for å gjøre ingenting. Slett det istedet." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 +msgid "No item selected" +msgstr "Intet innhold ble valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 +msgid "You must select one item from the list of Available items." +msgstr "Du må velge innhold fra listen over tilgjengelig innhold." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 +msgid "No items selected" +msgstr "Intet innhold bel valgt" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 +msgid "You must select at least one items from the list." +msgstr "Du må velge minst ett av innholdet i listen." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 +msgid "Are you certain you want to delete the following items?" +msgstr "Er du sikker på at du ønsker å slette det følgende innholdet?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:72 +msgid "Category Editor" +msgstr "Redigeringsverktøy for kategorier" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:73 +msgid "Items in use" +msgstr "Innhold i bruk" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:74 +msgid "" +"Delete item from database. This will unapply the item from all books and " +"then remove it from the database." +msgstr "" +"Slett innhold fra databasen. Dette vil fjerne innholdet fra alle bøker og " +"deretter fjerne det fra databasen." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:76 +msgid "Rename the item in every book where it is used." +msgstr "Foreta navneendring av innholdet i alle bøker der det benyttes." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:78 +msgid "Ctrl+S" +msgstr "Ctr+S" + #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:51 msgid "Test email settings" msgstr "Test e-postinstillinger" @@ -6156,11 +7433,11 @@ msgstr "Regulære uttrykk (?P<tittel>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:82 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:87 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:92 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /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:98 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:100 msgid "No match" msgstr "Ingen treff" @@ -6196,85 +7473,308 @@ msgstr "ISBN:" msgid "Regular expression (?P)" msgstr "Regulært uttrykk (?P)" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:53 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:36 +msgid "Save single format to disk..." +msgstr "Lagre et enkelt format til lagringsenhet..." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:52 +msgid "Edit metadata individually" +msgstr "Rediger metadata individuelt" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:55 +msgid "Edit metadata in bulk" +msgstr "Rediger metadata samlet" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:58 +msgid "Download metadata and covers" +msgstr "Last ned metadata og omslag" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 +msgid "Download only metadata" +msgstr "Last kun ned metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 +msgid "Download only covers" +msgstr "Last kun ned omslag" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 +msgid "Download only social metadata" +msgstr "Last kun ned sosiale metadata" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 +msgid "Merge into first selected book - delete others" +msgstr "Slå sammen med første valgte bok - slett øvrige" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 +msgid "Merge into first selected book - keep others" +msgstr "Slå sammen med første valgte bok - behold øvrige" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 +msgid "Add books from a single directory" +msgstr "Legg til bøker fra en enkelt mappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 +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 "" +"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/init.py:89 +msgid "" +"Add books from directories, including sub directories (Multiple books per " +"directory, assumes every ebook file is a different book)" +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/init.py:92 +msgid "Add Empty book. (Book entry with no formats)" +msgstr "Legg til tom bok (Uformatert bokoppføring)" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 +msgid "Save to disk" +msgstr "Lagre til disk" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 +msgid "Save to disk in a single directory" +msgstr "Lagre til disk i en enkelt mappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 +msgid "Save only %s format to disk" +msgstr "Lagre kun %s format til disken" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +msgid "Save only %s format to disk in a single directory" +msgstr "Lagre kun %s formatet til disken i en enkelt mappe" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 +msgid "View" +msgstr "Vis" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 +msgid "View specific format" +msgstr "Vis spesifikt format" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 +msgid "Remove selected books" +msgstr "Fjern valgte bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 +msgid "Remove files of a specific format from selected books.." +msgstr "Fjern filer for et spesifisert format fra valgte bøker..." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 +msgid "Remove all formats from selected books, except..." +msgstr "Fjern alle formater fra valgte bøker, unntatt..." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 +msgid "Remove covers from selected books" +msgstr "Fjern omslag fra valgte bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 +msgid "Remove matching books from device" +msgstr "Fjern samsvarende bøker fra enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 +msgid "Convert individually" +msgstr "Konverter individuelt" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 +msgid "Bulk convert" +msgstr "Samlet konvertering" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 +msgid "Create catalog of books in your calibre library" +msgstr "Lag en katalog av bøker i calibre-biblioteket ditt" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 +msgid "Run welcome wizard" +msgstr "Kjør velkomstveiviser" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 +msgid "Similar books..." +msgstr "Samsvarende bøker..." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 +msgid "Add books to library" +msgstr "Legg bøker til biblioteket" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "Behandle samlinger" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 +msgid "Cover Browser" +msgstr "Omslagssøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 +msgid "Tag Browser" +msgstr "Emneordsøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 +msgid "Book Details" +msgstr "Bokdetaljer" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:60 msgid "Job" msgstr "Oppgave" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:61 msgid "Status" msgstr "Status" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:62 msgid "Progress" msgstr "Fremdrift" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:63 msgid "Running time" msgstr "Kjøretid" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:75 msgid "There are %d running jobs:" msgstr "Det finnes %d kjørende oppgaver:" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:72 #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:101 msgid "Unknown job" msgstr "Ukjent oppgave" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:82 msgid "There are %d waiting jobs:" msgstr "Det finnes %d ventende jobber:" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:211 -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:219 msgid "Cannot kill job" msgstr "Kan ikke stoppe oppgaven" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:217 msgid "Cannot kill jobs that communicate with the device" msgstr "Kan ikke stoppe oppgaven som kommuniserer med enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:220 msgid "Job has already run" msgstr "Oppgaven har allerede blitt kjørt" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:248 msgid "Unavailable" msgstr "Ikke tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:280 +msgid "Jobs:" +msgstr "Oppgaver:" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:298 +msgid "Click to see list of active jobs." +msgstr "Klikk for å se en liste over aktive oppgaver." + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:358 msgid " - Jobs" msgstr " - Oppgave" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1161 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 +msgid "N" +msgstr "N" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 +msgid "Y" +msgstr "Y" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 +msgid "On Device" +msgstr "i enheten" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Størrelse (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Rangering" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:365 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:376 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:440 -msgid "None" -msgstr "Ingen" - -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Bok %s of %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 +msgid "The lookup/search name is \"{0}\"" +msgstr "Søkenavnet er \"{0}\"" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 +msgid "In Library" +msgstr "I biblioteket" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 +msgid "Size" +msgstr "Størrelse" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 +msgid "Marked for deletion" +msgstr "Merket for sletting" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 +msgid "Double click to edit me

      " +msgstr "Dobbelklikk til rediger me

      " + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:110 +msgid "Hide column %s" +msgstr "Skjul kolonne %s" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:115 +msgid "Sort on %s" +msgstr "Sorter blant %s" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:116 +msgid "Ascending" +msgstr "Stigende" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:119 +msgid "Descending" +msgstr "Synkende" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:131 +msgid "Change text alignment for %s" +msgstr "Forandre tekstjustering for %s" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 +msgid "Left" +msgstr "Venstre" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 +msgid "Right" +msgstr "Høyre" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:134 +msgid "Center" +msgstr "Senter" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:153 +msgid "Show column" +msgstr "Vis kolonne" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165 +msgid "Restore default layout" +msgstr "Gjenopprett standard visning" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Ikke tillatt" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:900 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -6282,14 +7782,6 @@ msgstr "" "Å legge direkte inn på en enhet er ikke støttet. Legg først boken til i " "Calibrebiblioteket." -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1100 -msgid "Format" -msgstr "Format" - -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1151 -msgid "Double click to edit me

      " -msgstr "Dobbelklikk til rediger me

      " - #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:47 msgid "Configure Viewer" msgstr "Konfigurer Leser" @@ -6364,132 +7856,161 @@ msgstr "Åpne e-bok" msgid "Configure" msgstr "Konfigurer" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:30 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:30 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:32 msgid "Start minimized to system tray." msgstr "Start minimalisert til systemstatusfeltet." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:34 msgid "Log debugging information to console" msgstr "Logg debugging informasjon til konsollen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:36 msgid "Do not check for updates" msgstr "Ikke søk etter oppdateringer" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:65 -msgid "Choose a location for your calibre e-book library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:74 -msgid "Failed to create library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:75 -msgid "Failed to create calibre library at: %r. Aborting." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:145 -msgid "Repairing failed" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:146 -msgid "The database repair failed. Starting with a new empty library." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:595 msgid "Calibre Library" msgstr "Calibre-bibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:163 -msgid "Choose a location for your new calibre e-book library" -msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 +msgid "Choose a location for your calibre e-book library" +msgstr "Velg en lokalisering for ditt calibre e-bokbibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 +msgid "Failed to create library" +msgstr "Kunne ikke lage bibliotek" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 +msgid "Failed to create calibre library at: %r." +msgstr "Kunne ikke lage et calibre-bibliotek ved: %r." + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 +msgid "Choose a location for your new calibre e-book library" +msgstr "Velg et område for ditt nye calibre e-bokbibliotek" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 +msgid "Initializing user interface..." +msgstr "Initierer brukergrensesnitt" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 +msgid "Repairing failed" +msgstr "Reparasjon gikk galt" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 +msgid "The database repair failed. Starting with a new empty library." +msgstr "Databasereparasjonen gikk galt. Starter med nytt tomt bibliotek." + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Dårlig databaselokalisering" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." -msgstr "" +msgstr "Dårlig valgt databaseområde %r. Calibre avsluttes." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" -msgstr "" +msgstr "Ødelagt database" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" +"Din calibre-database ser ut til å være ødelagt. Vil du at calibre skal " +"forsøke å reparere den automatisk? Dersom du sier nei, vil et nytt calibre-" +"bibliotek bli laget." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" +"Reparerer databasen. Dette kan ta svært lang tid for store boksamlinger" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" +"Dårlig valg av databaseområde %r. Vil starte med et nytt, tomt calibre-" +"bibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +msgid "Starting %s: Loading books..." +msgstr "Starter %s: Laster bøker..." + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 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:252 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "Kan ikke Starte " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s kjører allerede." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 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:258 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "øvre høyre område av skjermen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:260 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "nedre høyre område av skjermen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "forsøk å re-starte datamaskinen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:265 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:277 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "forsøk å slette filen" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:253 msgid "calibre" msgstr "calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255 +msgid "&Restrict to:" +msgstr "&Begrens til:" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:256 +msgid "" +"Books display will be restricted to those matching the selected saved search" +msgstr "" +"Bokvisning vil begrenses til dem som samsvarer med de valgte lagrede søkene" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:257 +msgid "set in ui.py" +msgstr "set in ui.py" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:258 msgid "Advanced search" msgstr "Avansert søk" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:260 msgid "Alt+S" msgstr "Alt+S" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:261 msgid "&Search:" msgstr "&Søk:" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:370 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:371 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:263 msgid "" "

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

      Words separated by spaces are ANDed" @@ -6497,142 +8018,116 @@ msgstr "" "

      Søk i listen over bøker etter tittel, forfatter, forlegger, emneord, " "kommentarer osv.

      Ord delt med mellomrom forstås som OG" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:372 -msgid "set in ui.py" -msgstr "set in ui.py" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:264 msgid "Reset Quick Search" msgstr "Tilbakestill hurtigsøk" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:266 msgid "Choose saved search or enter name for new saved search" msgstr "Velg lagret søk eller skriv inn navnet for nytt lagret søk" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:267 msgid "Copy current search text (instead of search name)" msgstr "Kopier gjeldende søketekst (istedet for søkenavn)" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:269 msgid "Save current search under the name shown in the box" msgstr "Lagre gjledende søk under navnet som viser i boksen" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271 msgid "Delete current saved search" msgstr "Slett gjeldende lagrete søk" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:382 -msgid "Sort by &popularity" -msgstr "Sorter etter &populæritet" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:383 -msgid "Match any" -msgstr "Sammenlign hviklet som helst" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:384 -msgid "Match all" -msgstr "Sammenlign alle" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:385 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:273 msgid "Add books" msgstr "Legg til bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:274 msgid "A" msgstr "A" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:275 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:276 msgid "Remove books" msgstr "Fjern bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:389 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:277 msgid "Del" msgstr "Slett" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:278 msgid "Edit meta information" msgstr "Rediger metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:279 msgid "E" msgstr "E" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:392 -msgid "Merge books" -msgstr "Slå sammen bøker" +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:280 +msgid "Merge book records" +msgstr "Slå sammen bokoppføringer" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:281 msgid "M" msgstr "M" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:282 msgid "Send to device" msgstr "Send til enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:347 -msgid "Save to disk" -msgstr "Lagre til disk" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:284 msgid "S" msgstr "S" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:285 msgid "Fetch news" msgstr "Hent nyheter" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:286 msgid "F" msgstr "F" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:399 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:287 msgid "Convert E-books" msgstr "Konverter e-bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:288 msgid "C" msgstr "C" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:357 -msgid "View" -msgstr "Vis" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:290 msgid "V" msgstr "V" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:291 msgid "Open containing folder" msgstr "Åpne innholdsfolder" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:292 msgid "Show book details" msgstr "Vis bokdetaljer" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:293 msgid "Books by same author" msgstr "Bøker av samme forfatter" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:294 msgid "Books in this series" msgstr "Bøker i denne serien" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:295 msgid "Books by this publisher" msgstr "Bøker av dette forlaget" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:296 msgid "Books with the same tags" msgstr "Bøker med de samme taggene" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:298 msgid "Configure calibre" msgstr "Konfigurer calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:299 msgid "Ctrl+P" msgstr "Ctrl+P" @@ -6664,11 +8159,35 @@ 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:78 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Søk" +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 +msgid "The selected search will be permanently deleted. Are you sure?" +msgstr "Det valgte søket vil bli permanent slettet. Er du sikker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 +msgid "Search (For Advanced Search click the button to the left)" +msgstr "Søk (For avansert søk, klikk på knappen til venstre)" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 +msgid "Saved Searches" +msgstr "Lagrete søk" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:46 +msgid "({0} of {1})" +msgstr "({0} av {1})" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:52 +msgid "(all books)" +msgstr "(Alle bøker)" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 +msgid "({0} of all)" +msgstr "({0} av alle)" + #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:58 msgid "Press a key..." msgstr "Trykk en tast..." @@ -6729,46 +8248,77 @@ msgstr "Tøm" msgid "&Alternate shortcut:" msgstr "&Veksle mellom snarveier" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 -msgid "Jobs:" -msgstr "Oppgaver:" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 +msgid "Rename '%s'" +msgstr "Navneendring av '%s'" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:163 -msgid "Click to see list of active jobs." -msgstr "Klikk for å se en liste over aktive oppgaver." +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 +msgid "Edit sort for '%s'" +msgstr "Rediger sortering for '%s'" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 -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/tag_view.py:200 +msgid "Hide category %s" +msgstr "Skjul kategorien %s" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 -msgid "Click to turn off Cover Browsing" -msgstr "Klikk for å slå av omslagsgjennomsyn" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 +msgid "Show category" +msgstr "Vis kategorier" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:206 -msgid "" -"

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

      Gjennomsyn av bøker etter omslag er slått av.
      Import av " -"billedflytmodulen gikk galt:
      " +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 +msgid "Show all categories" +msgstr "Vis alle kategorier" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:214 -msgid "Click to browse books by tags" -msgstr "Klikk for å se gjennom bøker etter emneord" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 +msgid "Manage %s" +msgstr "Administrere %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Authors" -msgstr "Forfattere" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 +msgid "Manage Saved Searches" +msgstr "Administrere lagrede søk" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Publishers" -msgstr "Forlag" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 +msgid "Manage User Categories" +msgstr "Administrere brukerkategorier" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "Søk" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +msgid "Duplicate search name" +msgstr "Dupliser søkenavn" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 +msgid "The saved search name %s is already used." +msgstr "Det lagrede søkenavnet %s er allerede benyttet." + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by name" +msgstr "Sorter etter navn" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by popularity" +msgstr "Sorter etter popularitet" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 +msgid "Sort by average rating" +msgstr "Sorter etter gjennomsnittsbedømning" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 +msgid "Match all" +msgstr "Sammenlign alle" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 +msgid "Match any" +msgstr "Sammenlign hviklet som helst" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 +msgid "Manage &user categories" +msgstr "Administrer &brukerkategorier" + #: /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)" @@ -6812,581 +8362,62 @@ msgstr "" "De følgende bøkene har allerede blitt konvertert til %s format. Ønsker du å " "konvertere dem på nytt?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:67 -msgid "Save single format to disk..." -msgstr "Lagre et enkelt format til lagringsenhet..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:148 -msgid "Search (For Advanced Search click the button to the left)" -msgstr "Søk (For avansert søk, klikk på knappen til venstre)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:154 -msgid "Saved Searches" -msgstr "Lagrete søk" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:177 -msgid "Error communicating with device" -msgstr "Feil ved kommunikasjonen med enheten" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:162 msgid "&Restore" msgstr "&Gjenopprett" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:164 msgid "&Donate to support calibre" msgstr "&Doner for å støtte Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:167 msgid "&Eject connected device" msgstr "&Avslutt tilkoblet enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:204 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:172 msgid "&Restart" msgstr "&Omstart" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:244 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:206 msgid "

      For help see the: User Manual
      " msgstr "

      For hjelp, se: Brukermanual
      " -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:212 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/ui.py:273 -msgid "Edit metadata individually" -msgstr "Rediger metadata individuelt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:275 -msgid "Edit metadata in bulk" -msgstr "Rediger metadata samlet" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:277 -msgid "Download metadata and covers" -msgstr "Last ned metadata og omslag" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:278 -msgid "Download only metadata" -msgstr "Last kun ned metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:279 -msgid "Download only covers" -msgstr "Last kun ned omslag" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:280 -msgid "Download only social metadata" -msgstr "Last kun ned sosiale metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:284 -msgid "Merge into first selected book - delete others" -msgstr "Slå sammen med første valgte bok - slett øvrige" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:286 -msgid "Merge into first selected book - keep others" -msgstr "Slå sammen med første valgte bok - behold øvrige" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:293 -msgid "Add books from a single directory" -msgstr "Legg til bøker fra en enkelt mappe" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:294 -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 "" -"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/ui.py:297 -msgid "" -"Add books from directories, including sub directories (Multiple books per " -"directory, assumes every ebook file is a different book)" -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/ui.py:300 -msgid "Add Empty book. (Book entry with no formats)" -msgstr "Legg til tom bok (Uformatert bokoppføring)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:348 -msgid "Save to disk in a single directory" -msgstr "Lagre til disk i en enkelt mappe" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2172 -msgid "Save only %s format to disk" -msgstr "Lagre kun %s format til disken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:358 -msgid "View specific format" -msgstr "Vis spesifikt format" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:363 -msgid "Remove selected books" -msgstr "Fjern valgte bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:365 -msgid "Remove files of a specific format from selected books.." -msgstr "Fjern filer for et spesifisert format fra valgte bøker..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:367 -msgid "Remove all formats from selected books, except..." -msgstr "Fjern alle formater fra valgte bøker, unntatt..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:369 -msgid "Remove covers from selected books" -msgstr "Fjern omslag fra valgte bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:406 -msgid "Convert individually" -msgstr "Konverter individuelt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:407 -msgid "Bulk convert" -msgstr "Samlet konvertering" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:410 -msgid "Create catalog of books in your calibre library" -msgstr "Lag en katalog av bøker i calibre-biblioteket ditt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:426 -msgid "Run welcome wizard" -msgstr "Kjør velkomstveiviser" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:462 -msgid "Similar books..." -msgstr "Samsvarende bøker..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "Calibre hurtigstart-guide" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:745 -msgid "Browse by covers" -msgstr "Søk blant omslag" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:802 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:806 -msgid "(all books)" -msgstr "(Alle bøker)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:811 -msgid "(%d found)" -msgstr "(%d funnet)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:901 -msgid "Device: " -msgstr "Enhet: " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:903 -msgid " detected." -msgstr " Funnet" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:931 -msgid "Connected " -msgstr "Tilkoblet " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:943 -msgid "Device database corrupted" -msgstr "Enhetens database er ødelagt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:944 -msgid "" -"\n" -"

      The database of books on the reader is corrupted. Try the " -"following:\n" -"

        \n" -"
      1. Unplug the reader. Wait for it to finish regenerating " -"the database (i.e. wait till it is ready to be used). Plug it back in. Now " -"it should work with %(app)s. If not try the next step.
      2. \n" -"
      3. Quit %(app)s. Find the file media.xml in the reader's " -"main memory. Delete it. Unplug the reader. Wait for it to regenerate the " -"file. Re-connect it and start %(app)s.
      4. \n" -"
      \n" -" " -msgstr "" -"\n" -"

      Bokdatabaser på leseren er ødelagt. Forsøk følgende::\n" -"

        \n" -"
      1. Trekk pluggen ut av leseren. Vent til den har fullført " -"regenereringen av databasen (Det vil si, vent til den er klar til bruk. " -"Plugg inn igjen. Nå skal den virke sammen med %(app)s. Om ikke, forsøk neste " -"trinn.
      2. \n" -"
      3. Stopp %(app)s. Finn filen media.xml i leserens " -"hovedminne. Slett denne. Trekk pluggen ut av leseren. Vent til den " -"regenererer filen. Koble til på nytt og start %(app)s.
      4. \n" -"
      \n" -" " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1003 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1180 -msgid "Use library only" -msgstr "Bruk kun biblioteket" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1004 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1181 -msgid "User annotations generated from main library only" -msgstr "Brukerkommentaer genereres kun fra hovedbiblioteket" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1011 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1492 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1549 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1587 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1608 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1734 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1799 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1917 -msgid "No books selected" -msgstr "Ingen bøker ble valgt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1012 -msgid "No books selected to fetch annotations from" -msgstr "Ingen bøker er valgt for å hente kommentarer fra" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1037 -msgid "Merging user annotations into database" -msgstr "Slå sammen brukerkommentarer til databasen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1065 -msgid "%s
      Last Page Read: %d (%d%%)" -msgstr "%s
      Siste side lest: %d (%d%%)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1071 -msgid "%s
      Last Page Read: Location %d (%d%%)" -msgstr "%s
      Plassering av siste side lest%d (%d%%)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1090 -msgid "Location %d • %s
      %s
      " -msgstr "Plassering %d • %s
      %s
      " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1099 -msgid "Page %d • %s
      " -msgstr "Side %d • %s
      " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1104 -msgid "Location %d • %s
      " -msgstr "Plassering %d • %s
      " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1224 -msgid "How many empty books?" -msgstr "Hvor mange tomme bøker?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1225 -msgid "How many empty books should be added?" -msgstr "Hvor mange tomme bøker skal legges til?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1273 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1324 -msgid "Uploading books to device." -msgstr "Laster opp bøker til enheten." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1285 -msgid "EPUB Books" -msgstr "EPUB bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1286 -msgid "LRF Books" -msgstr "LRF bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1287 -msgid "HTML Books" -msgstr "HTML-bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1288 -msgid "LIT Books" -msgstr "LIT bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1289 -msgid "MOBI Books" -msgstr "MOBI bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1290 -msgid "Topaz books" -msgstr "Topaz-bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1291 -msgid "Text books" -msgstr "Tekst bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1292 -msgid "PDF Books" -msgstr "PDF-bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1293 -msgid "Comics" -msgstr "Tegneserier" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1294 -msgid "Archives" -msgstr "Arkiver" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1298 -msgid "Supported books" -msgstr "Støttede bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1333 -msgid "Merged some books" -msgstr "Slått sammen noen bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1334 -msgid "" -"Some duplicates were found and merged into the following existing books:" -msgstr "" -"Noen duplikater ble funnet og slått sammen til følgende eksisterende bøker:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1343 -msgid "Failed to read metadata" -msgstr "Kunne ikke lese metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1344 -msgid "Failed to read metadata from the following" -msgstr "Kunne ikke lese metadata fra følgende" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1364 -msgid "Cannot delete" -msgstr "Kan ikke fjerne" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1367 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2061 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2077 -msgid "No book selected" -msgstr "Ingen bøker ble valgt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1377 -msgid "Choose formats to be deleted" -msgstr "Velg formater som skal fjernes" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1395 -msgid "Choose formats not to be deleted" -msgstr "Velg formatet ikke til å slettes" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1433 -msgid "" -"The selected books will be permanently deleted and the files removed " -"from your computer. Are you sure?" -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/ui.py:1460 -msgid "Deleting books from device." -msgstr "Sletter bøker fra enheten." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1491 -msgid "Cannot download metadata" -msgstr "Kan ikke laste ned metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1507 -msgid "social metadata" -msgstr "sosiale metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1509 -msgid "covers" -msgstr "Omslag" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1509 -msgid "metadata" -msgstr "metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1511 -msgid "Downloading %s for %d book(s)" -msgstr "Laster ned %s for %d bok(bøker)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1533 -msgid "Failed to download some metadata" -msgstr "Klarte ikke å laste ned en del av metadataene" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1534 -msgid "Failed to download metadata for the following:" -msgstr "Kunne ikke laste ned metadata for følgende:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1537 -msgid "Failed to download metadata:" -msgstr "Kunne ikke laste ned metadata:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1548 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1586 -msgid "Cannot edit metadata" -msgstr "Kan ikke redigere metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1607 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1610 -msgid "Cannot merge books" -msgstr "Kan ikke slå sammen bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1611 -msgid "At least two books must be selected for merging" -msgstr "Minst to bøker må velges for å slå sammen bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1615 -msgid "" -"All book formats and metadata from the selected books will be added to the " -"first selected book.

      The second and subsequently selected " -"books will not be deleted or changed.

      Please confirm you want to " -"proceed." -msgstr "" -"Alle bokformater og metadata fra de valgte bøkene vil bli lagt til " -"første valgte bok..

      Den andre og påfølgende valgte bøker vil " -"ikke bli slettet eller endret.

      Vennligst bekreft at du ønsker å " -"fortsette." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1626 -msgid "" -"All book formats and metadata from the selected books will be merged into " -"the first selected book.

      After merger the second and " -"subsequently selected books will be deleted.

      All book formats " -"of the first selected book will be kept and any duplicate formats in the " -"second and subsequently selected books will be permanently deleted " -"from your computer.

      Are you sure you want to proceed?" -msgstr "" -"Alle bokformater og metadata fra de valgte bøkene vil bli slått sammen med " -"første valgte bok.

      Etter sammenslåing vil andre og påfølgende " -"valgte bøker bli slettet.

      Alle bokformater for første valgte " -"bok vil bli beholdt og øvrige duplikatformater i den andre og påfølgende " -"valgte bøker vil bli slettet permanent fra din datamaskin.

      Er " -"du sikker på at duvil fortsette?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1638 -msgid "" -"You are about to merge more than 5 books. Are you sure you want to " -"proceed?" -msgstr "" -"Du er i ferd med å slå sammen fler enn 5 bøker. Er du sikker på at du " -"ønsker å fortsette?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1733 -msgid "Cannot save to disk" -msgstr "Kan ikke lagre til disk" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1736 -msgid "Choose destination directory" -msgstr "Velg mottaksmappe" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1769 -msgid "Error while saving" -msgstr "Feil ved lagring" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1770 -msgid "There was an error while saving." -msgstr "En feil oppsto ved lagring" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1777 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1778 -msgid "Could not save some books" -msgstr "Kunne ikke lagre enkelte bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1779 -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/ui.py:1800 -msgid "No books selected to generate catalog for" -msgstr "Ingen bøker ble valgt for å produsere kataloger" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1817 -msgid "Generating %s catalog..." -msgstr "Produserer %s katalog..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1823 -msgid "" -"No books to catalog\n" -"Check exclude tags" -msgstr "" -"Ingen bøker til katalog\n" -"Sjekk utelatte emneord" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1833 -msgid "Catalog generated." -msgstr "Katalog produsert." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1836 -msgid "Export Catalog Directory" -msgstr "Eksporter katalogdirektorat" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1837 -msgid "Select destination for %s.%s" -msgstr "Velg plassering for %s.%s" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1851 -msgid "Fetching news from " -msgstr "Skaffer nyheter fra " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1865 -msgid " fetched." -msgstr " funnet." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1916 -msgid "Cannot convert" -msgstr "Kan ikke konvertere" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1945 -msgid "Starting conversion of %d book(s)" -msgstr "Starter konverteringen av %d boken(bøkene)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2061 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2114 -msgid "Cannot view" -msgstr "Kan ikke vise" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2076 -msgid "Cannot open folder" -msgstr "Kan ikke åpne folder" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2098 -msgid "Multiple Books Selected" -msgstr "Flere bøker ble valgt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2099 -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 "" -"Du forsøker å åpne %d bøker. Åpner du for mange bøker på en gang kan dette " -"gjøre systemet tregt og påvirke hastigheten til datamaskinen. Når du har " -"startet denne prosessen, kan den ikke stanses før den er fullført. Ønsker du " -"å fortsette?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2115 -msgid "%s has no available formats." -msgstr "%s har ikke tilgjengelig formater." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2156 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "Kan ikke konfigurere" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2157 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 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/ui.py:2200 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 +msgid "Cannot configure before calibre is restarted." +msgstr "Kan ikke konfigurere før calibre har blitt startet på nytt." + +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "Ingen detaljert informasjon er tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2201 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 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/ui.py:2257 -msgid "Error talking to device" -msgstr "Feil ved komminikasjonen med enheten" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2258 -msgid "" -"There was a temporary error talking to the device. Please unplug and " -"reconnect the device and or reboot." -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/ui.py:2281 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2309 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Feil ved konverteringen" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2282 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

      Could not convert: %s

      It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -7395,15 +8426,15 @@ msgstr "" "Du må først fjerne DRM beskyttelsen ved å benytte et 3.parts program med " "slike egenskaper." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2295 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Beskrivelse Slettet" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2310 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "Feilet" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2358 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 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." @@ -7411,11 +8442,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/ui.py:2383 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 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/ui.py:2386 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
      \n" " Quitting may cause corruption on the device.
      \n" @@ -7425,11 +8456,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/ui.py:2390 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "ADVARSEL: Aktive oppgaver" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2442 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -7437,7 +8468,7 @@ msgstr "" "vil fortsette å kjøre i systemstatusfeltet. For å stenge programmet, velg " "Stopp innholdslisten i systemstatusfeltet." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2461 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:52 msgid "" "Latest version: %s" @@ -7445,11 +8476,11 @@ msgstr "" "Siste versjon: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2469 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:60 msgid "Update available" msgstr "Oppdatering tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2470 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:61 msgid "" "%s has been updated to version %s. See the new features. Visit the download page?" @@ -7854,7 +8885,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:184 msgid "E-book Viewer" -msgstr "" +msgstr "E-bok-leser" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:185 msgid "Close dictionary" @@ -7886,11 +8917,11 @@ msgstr "Finn neste" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:198 msgid "Find next occurrence" -msgstr "" +msgstr "Finn neste hendelse" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:199 msgid "F3" -msgstr "" +msgstr "F3" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:200 msgid "Copy to clipboard" @@ -7914,29 +8945,29 @@ msgstr "Utskrift" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:206 msgid "Find previous" -msgstr "" +msgstr "Finn forrige" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:207 msgid "Find previous occurrence" -msgstr "" +msgstr "Finn forrige hendelse" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:208 msgid "Shift+F3" -msgstr "" +msgstr "Shift+F3" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/printing.py:114 msgid "Print eBook" msgstr "Skriv ut e-bok" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "Kopier bilde" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "Lim inn bilde" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -7946,7 +8977,7 @@ msgstr "" "%d\n" "bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" @@ -7956,7 +8987,7 @@ msgstr "" "%s\n" "tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" @@ -7966,7 +8997,7 @@ msgstr "" "%s\n" "tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" @@ -7976,45 +9007,61 @@ msgstr "" "%s\n" "tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 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:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 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:236 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 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:237 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 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:530 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 +msgid "Books located at" +msgstr "Bøker lokalisert ved" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "Endre mellom store og små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "Store bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "Små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "Bytt mellom store og små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "Store eller små bokstaver i tittelen" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 +msgid "Drag to resize" +msgstr "Dra for å endre størrelse" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 +msgid "Show" +msgstr "Vis" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 +msgid "Hide" +msgstr "Skjul" + +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:367 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 " @@ -8024,14 +9071,14 @@ msgstr "" "kan du koble opp din calibre boksamling direkte til enheten. For å gjøre " "dette må du slå på innholds-serveren." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:371 msgid "" "Remember to leave calibre running as the server only runs as long as calibre " "is running." msgstr "" "Husk å la calibre kjøre, da serveren kun kjører så lenge calibre kjører." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:373 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 " @@ -8041,20 +9088,20 @@ msgstr "" "WordPlayer. Mitt vertskapsnavn må være det fullt kvalifiserte vertsnavnet " "eller IP-adressen til datamaskinen som calibre kjører på." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:449 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:450 msgid "Moving library..." msgstr "Flytter bibliotek..." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:465 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:467 msgid "Failed to move library" msgstr "Kunne ikke flytte bibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:521 msgid "Invalid database" msgstr "Ugyldig database" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:522 msgid "" "

      An invalid library already exists at %s, delete it before trying to move " "the existing library.
      Error: %s" @@ -8062,11 +9109,11 @@ msgstr "" "

      Et ugyldig bibliotek finnes allerede på %s. Slett dette før du forsøker å " "flytte det gjeldende biblioteket.
      Feil:%s" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:533 msgid "Could not move library" msgstr "Kunne ikke flytte bibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:661 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:662 msgid "welcome wizard" msgstr "Velkommen-veiviser" @@ -8103,13 +9150,6 @@ msgstr "&Produsenter" msgid "&Devices" msgstr "&Enheter" -#: /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:49 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 -msgid "WizardPage" -msgstr "Veiviser-side" - #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:48 msgid "" "

      Congratulations!

      You have successfully setup calibre. Press the %s " @@ -8320,45 +9360,50 @@ msgstr "" msgid "Turn on the &content server" msgstr "Slå på &Innholdsserver" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:8 -msgid "Settings to control the calibre content server" -msgstr "Innstillinger for å kontrollere calibre innholdsserver" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 +msgid "today" +msgstr "i dag" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:12 -msgid "The port on which to listen. Default is %default" -msgstr "Porten som skal lyttes til. Standard er %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 +msgid "yesterday" +msgstr "i går" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:14 -msgid "The server timeout in seconds. Default is %default" -msgstr "" -"Antall sekunder før tidsavbrudd for server i sekunder. Standard er %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 +msgid "thismonth" +msgstr "Denne måneden" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:16 -msgid "The max number of worker threads to use. Default is %default" -msgstr "" -"Høyeste antallet oppgavetråder som skal benyttes. Standard er %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 +msgid "daysago" +msgstr "dager siden" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:18 -msgid "Set a password to restrict access. By default access is unrestricted." -msgstr "" -"Legg inn et passord for å begrense tilgangen. Som standard er ingen " -"begrensning lagt inn." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 +msgid "no" +msgstr "nei" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:20 -msgid "Username for access. By default, it is: %default" -msgstr "Brukernavn for tilgang. Som standard er dette: %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 +msgid "unchecked" +msgstr "ikke merket" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:24 -msgid "The maximum size for displayed covers. Default is %default." -msgstr "Største størrelse for omslagsvisning. Standard er %default." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 +msgid "checked" +msgstr "merket" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:26 -msgid "" -"The maximum number of matches to return per OPDS query. This affects Stanza, " -"WordPlayer, etc. integration." -msgstr "" -"Maksimum antall treff som resultat per OPDS spørring. Dette affekterer " -"Stanza, WordPlayer osv integrering." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 +msgid "yes" +msgstr "ja" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 +msgid "blank" +msgstr "tom" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 +msgid "empty" +msgstr "tom" #: /home/kovid/work/calibre/src/calibre/library/catalog.py:41 msgid "" @@ -8387,7 +9432,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: CSV, XML utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:262 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:202 msgid "" "Title of generated catalog used as title in metadata.\n" "Default: '%default'\n" @@ -8397,7 +9442,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: ePub, MOBI utdata-formater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:269 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:209 msgid "" "Save the output from different stages of the conversion pipeline to the " "specified directory. Useful if you are unsure at which stage of the " @@ -8411,7 +9456,7 @@ msgstr "" "Standard: '%default'Ingen\n" "Gjelder: ePub, MOBI utdata-formater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:279 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:219 msgid "" "Regex describing tags to exclude as genres.\n" "Default: '%default' excludes bracketed tags, e.g. '[]'\n" @@ -8421,7 +9466,7 @@ msgstr "" "Standard: '%default' utelater emneord i braketter, f.eks. '[]'\n" "Gjelder: ePub, MOBI utdata-formater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:225 msgid "" "Comma-separated list of tag words indicating book should be excluded from " "output. Case-insensitive.\n" @@ -8436,7 +9481,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:293 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:233 msgid "" "Include 'Titles' section in catalog.\n" "Default: '%default'\n" @@ -8446,7 +9491,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:300 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:240 msgid "" "Include 'Recently Added' section in catalog.\n" "Default: '%default'\n" @@ -8456,7 +9501,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:307 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:247 msgid "" "Tag prefix for user notes, e.g. '*Jeff might enjoy reading this'.\n" "Default: '%default'\n" @@ -8467,7 +9512,7 @@ msgstr "" "Standard; '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:314 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:254 msgid "" "Sort titles with leading numbers as text, e.g.,\n" "'2001: A Space Odyssey' sorts as \n" @@ -8480,7 +9525,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:321 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:261 msgid "" "Specifies the output profile. In some cases, an output profile is required " "to optimize the catalog for the device. For example, 'kindle' or " @@ -8496,7 +9541,7 @@ msgstr "" "Standard: '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:328 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:268 msgid "" "Tag indicating book has been read.\n" "Default: '%default'\n" @@ -8506,7 +9551,7 @@ msgstr "" "Standard; '%default'\n" "Gjelder: ePub, MOBI utdataformater" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:122 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:41 msgid "" "Path to the calibre library. Default is to use the path stored in the " "settings." @@ -8514,7 +9559,7 @@ msgstr "" "Sti til calibre-biblioteket. Standard er å benytte stien som er lagret under " "innstillinger." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:215 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:120 msgid "" "%prog list [options]\n" "\n" @@ -8523,7 +9568,7 @@ msgstr "" "%programliste [brukervalg]\n" "Lister opp bøker som er tiljengelig i calibres database.\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:223 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:128 msgid "" "The fields to display when listing books in the database. Should be a comma " "separated list of fields.\n" @@ -8537,7 +9582,7 @@ msgstr "" "Standard: %%default. Spesialfeltet \"alt\" kan benyttes for å velge alle " "felt. Dette har kun effekt i tekst utdata format." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:230 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:135 msgid "" "The field by which to sort the results.\n" "Available fields: %s\n" @@ -8547,11 +9592,11 @@ msgstr "" "Tilgjengelige fel: %s\n" "Standard: %%default" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:232 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:137 msgid "Sort results in ascending order" msgstr "Sorter resultater i stigende rekkefølge" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:234 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:139 msgid "" "Filter the results by the search query. For the format of the search query, " "please see the search related documentation in the User Manual. Default is " @@ -8561,18 +9606,18 @@ msgstr "" "vennligst se søksrelatert dokumentasjon i brukermanualen. Standard er satt " "til: Ingen filtrering" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:236 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:141 msgid "" "The maximum width of a single line in the output. Defaults to detecting " "screen size." msgstr "" "Maksimal bredde for enkeltlinje i utdata. Standard er: Følg skjermstørrelse." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:237 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:142 msgid "The string used to separate fields. Default is a space." msgstr "Strengen som brukes for å dele felt. Standard er et mellomrom." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:238 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:143 msgid "" "The prefix for all file paths. Default is the absolute path to the library " "folder." @@ -8580,22 +9625,15 @@ msgstr "" "Benevnelse for alle filbaner. Standard er den absolutte banen til " "bibliotekfolderen." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:241 -msgid "" -"The format in which to output the data. Available choices: %s. Defaults is " -"text." -msgstr "" -"Formatet som utdata skal ha. Valgmuligheter er: %s. Standard er tekst." - -#: /home/kovid/work/calibre/src/calibre/library/cli.py:263 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:165 msgid "Invalid fields. Available fields:" msgstr "Ugyldige felt. Tilgjengelige felt:" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:270 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:172 msgid "Invalid sort field. Available fields:" msgstr "Ugyldig sorteringsfelt. Tilgjengelige felt:" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:342 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:244 msgid "" "The following books were not added as they already exist in the database " "(see --duplicates option):" @@ -8603,7 +9641,7 @@ msgstr "" "De følgende bøkene ble ikke lagt til, da de allerede finnes i databasen (se -" "-duplicates)" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:365 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:267 msgid "" "%prog add [options] file1 file2 file3 ...\n" "\n" @@ -8617,7 +9655,7 @@ msgstr "" "spesifisere mapper, se\n" "de mapperelaterte valgene under.\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:374 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:276 msgid "" "Assume that each directory has only a single logical book and that all files " "in it are different e-book formats of that book" @@ -8625,11 +9663,11 @@ msgstr "" "Forutsett at hver mappe har kun en enkelt logisk bok og at alle filer i " "denne mappen er forskjellige e-bokformater av den boken." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:376 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:278 msgid "Process directories recursively" msgstr "Prosesser mappene gjentagende" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:378 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:280 msgid "" "Add books to database even if they already exist. Comparison is done based " "on book titles." @@ -8637,27 +9675,27 @@ msgstr "" "Legg bøker til databasen selv om de allerede finnes. Sammenligning gjøres " "basert på boktitler." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:380 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:282 msgid "Add an empty book (a book with no formats)" -msgstr "" +msgstr "Legg til en tom bok (en uformatert bok)" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:382 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:284 msgid "Set the title of the added empty book" -msgstr "" +msgstr "Legg inn tittel for den tillagte tomme boken" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:384 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:286 msgid "Set the authors of the added empty book" -msgstr "" +msgstr "Legg inn forfatter for den tillagte tomme boken" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:386 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:288 msgid "Set the ISBN of the added empty book" -msgstr "" +msgstr "Legg inn ISBN tilhørende den tillagte tomme boken" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:411 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:313 msgid "You must specify at least one file to add" msgstr "Du må spesifisere minst en fil som skal legges til" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:427 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:329 msgid "" "%prog remove ids\n" "\n" @@ -8671,11 +9709,11 @@ msgstr "" "liste over id-nummer (du kan få tak i id-nummerene ved å benytte list " "kommandoen).\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:442 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:344 msgid "You must specify at least one book to remove" msgstr "Du må spesifisere minst en bok som skal fjernes" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:461 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:363 msgid "" "%prog add_format [options] id ebook_file\n" "\n" @@ -8684,15 +9722,15 @@ msgid "" "already exists, it is replaced.\n" msgstr "%prog add_format[valgmuligheter] id ebok_fil\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:476 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:378 msgid "You must specify an id and an ebook file" msgstr "Du må spesifisere en id og en e-bokfil" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:481 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:383 msgid "ebook file must have an extension" msgstr "e-bokfilen må ha en filforlengelse" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:489 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:391 msgid "" "\n" "%prog remove_format [options] id fmt\n" @@ -8709,11 +9747,11 @@ msgstr "" "eller TXT eller EPUB. Dersom den logiske boken ikke har en fmt tilgjengelig, " "unnlat å gjøre noe som helst.\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:506 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:408 msgid "You must specify an id and a format" msgstr "Du må spesifisere en id og et format" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:524 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:426 msgid "" "\n" "%prog show_metadata [options] id\n" @@ -8728,15 +9766,15 @@ msgstr "" "Vis metadata lagret i calibres database for bøker identifisert med id.\n" "id er et id-nummer fra list kommandoen.\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:532 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:434 msgid "Print metadata in OPF form (XML)" msgstr "Skriv ut metadata i OPF format (XML)" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:541 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:443 msgid "You must specify an id" msgstr "Du må spesifisere en ID" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:554 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:456 msgid "" "\n" "%prog set_metadata [options] id /path/to/metadata.opf\n" @@ -8757,11 +9795,11 @@ msgstr "" "\n" "vis_metadata kommandoen.\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:570 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:472 msgid "You must specify an id and a metadata file" msgstr "Du må spesifisere en ID og metadatafil" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:590 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:492 msgid "" "%prog export [options] ids\n" "\n" @@ -8779,27 +9817,27 @@ msgstr "" "metadata (i\n" "en opf fil). Du kan få tak i ID-nummerene ved å benytte list kommandoen.\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:598 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:500 msgid "Export all books in database, ignoring the list of ids." msgstr "Eksporter alle bøker i databasen, ignorer ID listen." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:600 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:502 msgid "Export books to the specified directory. Default is" msgstr "Eksporter bøker til den spesifiserte mappen. Standard er" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:602 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:504 msgid "Export all books into a single directory" msgstr "Eksporter alle bøker inn til en enkelt mappe" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:609 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:511 msgid "Specifying this switch will turn this behavior off." msgstr "Ved å spesifisere denne bryteren vil det slå denne atferden av" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:632 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:534 msgid "You must specify some ids or the %s option" msgstr "Du må spesifisere noen ID'er eller %s valget" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:645 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:547 msgid "" "%prog add_custom_column [options] label name datatype\n" "\n" @@ -8816,7 +9854,7 @@ msgstr "" "kolonnen.\n" "datatype er en av: {0}\n" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:654 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:556 msgid "" "This column stores tag like data (i.e. multiple comma separated values). " "Only applies if datatype is text." @@ -8824,7 +9862,7 @@ msgstr "" "Denne kolonnen lagrer data med emneord (f.eks. flerfoldige kommaseparerte " "verdier). Gjelder kun dersom datatypen er tekst." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:658 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:560 msgid "" "A dictionary of options to customize how the data in this column will be " "interpreted." @@ -8832,11 +9870,11 @@ msgstr "" "En ordbok av valg for å tilpasse hvordan data i denne kolonnen vil bli " "tolket." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:671 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:573 msgid "You must specify label, name and datatype" msgstr "Du må spesifisere beskrivelse av navn og datatype" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:729 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:631 msgid "" "\n" " %prog catalog /path/to/destination.(csv|epub|mobi|xml ...) [options]\n" @@ -8855,7 +9893,7 @@ msgstr "" "katalogutdata.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:743 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:645 msgid "" "Comma-separated list of database IDs to catalog.\n" "If declared, --search is ignored.\n" @@ -8865,7 +9903,7 @@ msgstr "" "Om deklarert, --search er utelatt.\n" "Standard: alle" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:747 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:649 msgid "" "Filter the results by the search query. For the format of the search query, " "please see the search-related documentation in the User Manual.\n" @@ -8875,16 +9913,16 @@ msgstr "" "vennligst se i søkerelatert dokumentasjon i brukermanualen.\n" "Standard: ingen filtrering" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:753 -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:655 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:505 msgid "Show detailed output information. Useful for debugging" msgstr "Vis detaljert utdatainformasjon. Benyttes for feilsøking" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:766 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:668 msgid "Error: You must specify a catalog output file" msgstr "Feilmelding: Du må spesifisere en katalog for utdata-fil" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:710 msgid "" "\n" " %prog set_custom [options] column id value\n" @@ -8905,7 +9943,7 @@ msgstr "" " kommando.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:797 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:721 msgid "" "If the column stores multiple values, append the specified values to the " "existing ones, instead of replacing them." @@ -8913,11 +9951,11 @@ msgstr "" "Dersom kolonnen inneholder flerfoldige verdier, legg den spesifiserte " "verdien til den eksisterende, fremfor å erstatte dem." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:808 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:732 msgid "Error: You must specify a field name, id and value" msgstr "Feilmelding: Du må spesifisere et feltnavn, id og verdi" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:827 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:751 msgid "" "\n" " %prog custom_columns [options]\n" @@ -8932,19 +9970,19 @@ msgstr "" "id-er.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:834 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:758 msgid "Show details for each column." msgstr "Vis detaljer for hver kolonne." -#: /home/kovid/work/calibre/src/calibre/library/cli.py:846 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:770 msgid "You will lose all data in the column: %r. Are you sure (y/n)? " msgstr "Du vil miste alle data i kolonnen: %r. Er du sikker (J/N)? " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:848 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:772 msgid "y" msgstr "J" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:854 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:778 msgid "" "\n" " %prog remove_custom_column [options] label\n" @@ -8961,15 +9999,15 @@ msgstr "" " kolonner med vustom_columns kommandoen.\n" " " -#: /home/kovid/work/calibre/src/calibre/library/cli.py:862 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:786 msgid "Do not ask for confirmation" msgstr "Ikke spør etter bekreftelse" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:872 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:796 msgid "Error: You must specify a column label" msgstr "Feilmelding: Du må spesifisere en kolonnebeskrivelse!" -#: /home/kovid/work/calibre/src/calibre/library/cli.py:885 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:809 msgid "" "%%prog command [options] [arguments]\n" "\n" @@ -8989,30 +10027,50 @@ msgstr "" "\n" "For hjelp til en individuell kommando: %%prog kommando --help\n" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1261 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:70 +msgid "%sAverage rating is %3.1f" +msgstr "%sGjennomsnittlig vurdering er %3.1f" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:545 +msgid "Main" +msgstr "Hovedvalg" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 +msgid "Card A" +msgstr "Kort A" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:549 +msgid "Card B" +msgstr "Kort B" + +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "

      Migrating old database to ebook library in %s

      " msgstr "

      Migrerer gammel database til e-bokbiblioteket i %s
      " -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1290 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1799 msgid "Copying %s" msgstr "Kopierer %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1816 msgid "Compacting database" msgstr "Komprimerer databasen" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1400 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1909 msgid "Checking SQL integrity..." msgstr "Sjekker for SQL integritet..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1438 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1950 msgid "Checking for missing files." msgstr "Sjekker etter savnede filer." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1460 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1972 msgid "Checked id" msgstr "Sjekker ID" +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:118 +msgid "Ratings" +msgstr "Vurderinger" + #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:24 msgid "The title" msgstr "Tittelen" @@ -9160,11 +10218,61 @@ msgstr "Bytt ut mellomrom med underlinje." msgid "Requested formats not available" msgstr "Etterspurt format er ikke tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/library/server.py:379 +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:21 +msgid "Settings to control the calibre content server" +msgstr "Innstillinger for å kontrollere calibre innholdsserver" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:25 +msgid "The port on which to listen. Default is %default" +msgstr "Porten som skal lyttes til. Standard er %default" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:27 +msgid "The server timeout in seconds. Default is %default" +msgstr "" +"Antall sekunder før tidsavbrudd for server i sekunder. Standard er %default" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:29 +msgid "The max number of worker threads to use. Default is %default" +msgstr "" +"Høyeste antallet oppgavetråder som skal benyttes. Standard er %default" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:31 +msgid "Set a password to restrict access. By default access is unrestricted." +msgstr "" +"Legg inn et passord for å begrense tilgangen. Som standard er ingen " +"begrensning lagt inn." + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:33 +msgid "Username for access. By default, it is: %default" +msgstr "Brukernavn for tilgang. Som standard er dette: %default" + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:37 +msgid "The maximum size for displayed covers. Default is %default." +msgstr "Største størrelse for omslagsvisning. Standard er %default." + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:39 +msgid "" +"The maximum number of matches to return per OPDS query. This affects Stanza, " +"WordPlayer, etc. integration." +msgstr "" +"Maksimum antall treff som resultat per OPDS spørring. Dette affekterer " +"Stanza, WordPlayer osv integrering." + +#: /home/kovid/work/calibre/src/calibre/library/server/__init__.py:43 +msgid "" +"Group items in categories such as author/tags by first letter when there are " +"more than this number of items. Default: %default. Set to a large number to " +"disable grouping." +msgstr "" +"Grupperer elementer innen kategorier, som forfatter/emneord ved første " +"bokstav, når det er fler enn dette antallet elementer. Standard: %default. " +"Still inn på høyt antall for å slå av grupperinger." + +#: /home/kovid/work/calibre/src/calibre/library/server/base.py:93 msgid "Password to access your calibre library. Username is " msgstr "Passord for tilgang til ditt Calibrebibliotek. Brukernavn er " -#: /home/kovid/work/calibre/src/calibre/library/server.py:886 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:28 msgid "" "[options]\n" "\n" @@ -9174,14 +10282,54 @@ msgstr "" "\n" "Start Calibres innholdserver." -#: /home/kovid/work/calibre/src/calibre/library/server.py:888 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:30 msgid "Path to the library folder to serve with the content server" msgstr "Sti til bibliotekfolderen som fungerer som innholdsserver" -#: /home/kovid/work/calibre/src/calibre/library/server.py:890 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:32 msgid "Write process PID to the specified file" msgstr "Skriv prosess PID til spesifisert fil" +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:108 +msgid "%d books" +msgstr "%d bøker" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:127 +msgid "%d items" +msgstr "%d elementer" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:144 +msgid "RATING: %s
      " +msgstr "RANGERING: %s
      " + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:147 +msgid "TAGS: %s
      " +msgstr "EMNEORD: %s
      " + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:151 +msgid "SERIES: %s [%s]
      " +msgstr "SERIER: %s [%s]
      " + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:192 +msgid "Library" +msgstr "Bibliotek" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:231 +msgid "Books in your library" +msgstr "Bøker i ditt bibliotek" + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:237 +msgid "By " +msgstr "Av " + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:238 +msgid "Books sorted by " +msgstr "Bøker sortert av " + +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 +msgid "Newest" +msgstr "Nyeste" + #: /home/kovid/work/calibre/src/calibre/utils/config.py:48 msgid "%sUsage%s: %s\n" msgstr "%sBruksområde%s: %s\n" @@ -9198,58 +10346,67 @@ 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:650 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:670 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:652 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:672 msgid "Pattern to guess metadata from filenames" msgstr "Mønster for å vurdere metadata fra filnavnene" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:654 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:674 msgid "Access key for isbndb.com" msgstr "Tilgangsnøkkel for isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:656 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:676 msgid "Default timeout for network operations (seconds)" msgstr "Standard tidsavbrudd for nettverksoperasjoner (i sekunder)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:658 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:678 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:660 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:680 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:662 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:682 msgid "The default output format for ebook conversions." msgstr "Standard utdataformat for e-bok konverteringer." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:666 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:686 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:668 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:688 msgid "Read metadata from files" msgstr "Les metadata fra filer" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:670 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:690 msgid "The priority of worker processes" msgstr "Arbeidsprosessenes prioritet" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:672 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:692 msgid "Swap author first and last names when reading metadata" msgstr "Bytt mellom forfatterenes for og etternavn når den leser metadata" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:674 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:694 msgid "Add new formats to existing book records" msgstr "Legg til nye formater til eksisterende oppføringer" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:678 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:699 msgid "List of named saved searches" msgstr "Liste av navngitte søk" +#: /home/kovid/work/calibre/src/calibre/utils/config.py:700 +msgid "User-created tag browser categories" +msgstr "Brukerdefinerte kategorier for emneordsøk" + +#: /home/kovid/work/calibre/src/calibre/utils/config.py:702 +msgid "Preserve all collections even if not in library metadata." +msgstr "" +"Behold alle samlinger selv om de ikke finnes i bibliotekets metadata." + #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43 msgid "Waiting..." msgstr "Venter …" @@ -9319,34 +10476,38 @@ msgid "English (Pakistan)" msgstr "Engelsk (Pakistan)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 +msgid "English (Israel)" +msgstr "Engelsk (Israelsk)" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 msgid "English (Singapore)" msgstr "Engelsk (Singapor)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 msgid "English (Yemen)" msgstr "Engels (Yemen)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:109 msgid "English (Ireland)" msgstr "Engelsk (Irsk)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:109 -msgid "English (China)" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/utils/localization.py:110 +msgid "English (China)" +msgstr "Engelsk (Kina)" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:111 msgid "Spanish (Paraguay)" msgstr "Spansk (Paraguay)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:111 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112 msgid "German (AT)" msgstr "Tysk (AT)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:113 msgid "Dutch (NL)" msgstr "Hollansk (NL)" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:113 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114 msgid "Dutch (BE)" msgstr "Hollansk (BE)" @@ -9370,13 +10531,13 @@ msgstr "Kunne ikke verifisere med server: %s" msgid "Control email delivery" msgstr "Kontroller e-postlevering" -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:113 -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:135 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:118 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:140 msgid "Unknown feed" msgstr "Ukjent mating" -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:153 -#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:178 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:158 +#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:183 msgid "Untitled article" msgstr "Ubetitelet artikkel" @@ -9408,91 +10569,91 @@ msgstr "" "Last ikke ned siste versjon av punkt-markerte beskrivelser fra calibres " "server" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:43 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:44 msgid "Unknown News Source" msgstr "Ukjent nyhetskilde" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:565 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "The \"%s\" recipe needs a username and password." msgstr "\"%s\"kvitteringen trenger et brukernavn og et pasord." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:654 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:706 msgid "Download finished" msgstr "Nedlasting ferdig" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:656 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:708 msgid "Failed to download the following articles:" msgstr "Klarte ikke å laste ned følgende artikler:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:662 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:714 msgid "Failed to download parts of the following articles:" msgstr "Kunne ikke laste ned deler av den følgende artikklene" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:664 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:716 msgid " from " msgstr " fra " -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:666 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 msgid "\tFailed links:" msgstr "\tUgyldige lenker:" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:747 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:807 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "Kunne ikke hente artikkel. Kjør med -vv for å finne årsaken" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:768 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:828 msgid "Fetching feeds..." msgstr "Henter matinger..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:773 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:833 msgid "Got feeds from index page" msgstr "Funnet matinger fra indeksside" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:779 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:839 msgid "Trying to download cover..." msgstr "Forsøker å laste ned omslag..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:781 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:841 msgid "Generating masthead..." msgstr "Genererer mastetopp..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:861 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:922 msgid "Starting download [%d thread(s)]..." msgstr "Starter nedlasting [%d thread(s)]..." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:877 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:938 msgid "Feeds downloaded to %s" msgstr "Matinger er lastet ned til %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:887 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:948 msgid "Could not download cover: %s" msgstr "Kunne ikke laste ned omslag: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:899 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:960 msgid "Downloading cover from %s" msgstr "Laster ned omslag fra %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:934 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000 msgid "Masthead image downloaded" msgstr "Mastetopp-bilde er lastet ned" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1158 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1190 msgid "Untitled Article" msgstr "Utittelert artikkel" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1230 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1261 msgid "Article downloaded: %s" msgstr "Artikkelen har blitt lastet ned: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1241 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1272 msgid "Article download failed: %s" msgstr "Artikkelen kunne ikke lastes ned: %s" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1258 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1289 msgid "Fetching feed" msgstr "Henter mating" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1405 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1436 msgid "" "Failed to log in, check your username and password for the calibre " "Periodicals service." @@ -9500,7 +10661,7 @@ msgstr "" "Kunne ikke logge inn. Sjekk at du benytter riktig brukernavn og passord for " "calibres periodiske service." -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1421 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1452 msgid "" "You do not have permission to download this issue. Either your subscription " "has expired or you have exceeded the maximum allowed downloads for today." @@ -9515,16 +10676,16 @@ msgstr "Du" #: /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:181 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:183 msgid "Scheduled" msgstr "Planlagt" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:182 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:184 msgid "Custom" msgstr "Tilpasset" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:471 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:482 msgid "" "%prog URL\n" "\n" @@ -9534,18 +10695,18 @@ msgstr "" "\n" "Der URL for eksempel er http://google.com" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:474 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:485 msgid "Base directory into which URL is saved. Default is %default" msgstr "Basedirektorat der URL blir lagret. Standard er %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:477 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:488 msgid "" "Timeout in seconds to wait for a response from the server. Default: %default " "s" msgstr "" "Tidsavbrudd i sekunder å vente på svar fra server. Standard %default s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:480 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:491 msgid "" "Maximum number of levels to recurse i.e. depth of links to follow. Default " "%default" @@ -9553,7 +10714,7 @@ msgstr "" "Maksimum antall nivå å gjenta, for eksempel dybde av lenker som skal følges. " "Standard %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:483 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494 msgid "" "The maximum number of files to download. This only applies to files from tags. Default is %default" @@ -9561,7 +10722,7 @@ msgstr "" "Maksimum antall filer som skal lastes ned. Dette gjelder kun filer fra emneord. Standard er %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:485 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:496 msgid "" "Minimum interval in seconds between consecutive fetches. Default is %default " "s" @@ -9569,7 +10730,7 @@ msgstr "" "Minimum intervaller i sekunder mellom påfølgende innhentinger av data. " "Standard er %default s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:487 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:498 msgid "" "The character encoding for the websites you are trying to download. The " "default is to try and guess the encoding." @@ -9577,7 +10738,7 @@ msgstr "" "Karaktersettkodingen for nettsidene du forsøker å laste ned. Standard er å " "forsøke å gjette kodingen." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:489 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:500 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 " @@ -9588,7 +10749,7 @@ msgstr "" "samsvarer med et regulært uttrykk, så vil det bli fulgt. Som standard vil " "alle lenker blir fulgt." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:491 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:502 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 " @@ -9603,7 +10764,7 @@ msgstr "" "match-regexp uttrykk er spesifisert, så vil --filter-regexp uttrykk bli lagt " "til først." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:493 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:504 msgid "Do not download CSS stylesheets." msgstr "Ikke last ned CSS stilsett" @@ -10162,6 +11323,17 @@ msgstr "Ikke last ned CSS stilsett" #~ "Gjennomsnittlig linjelengde for linjeskift dersom HTML filen er fra en " #~ "tidligere delvis konvertering av en PDF fil." +#~ msgid "" +#~ "\n" +#~ "%prog [options] ISBN\n" +#~ "\n" +#~ "Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +#~ msgstr "" +#~ "\n" +#~ "%prog [valg] ISBN\n" +#~ "\n" +#~ "Finn et omslagsbilde for boken identifisert ved ISBN fra LibraryThing.com\n" + #~ msgid "Options to control e-book conversion." #~ msgstr "Valgmuligheter for å kontrollere konvertering av e-bøker" @@ -10188,6 +11360,9 @@ msgstr "Ikke last ned CSS stilsett" #~ msgid "Frequently used directories" #~ msgstr "Ofte benyttede kataloger" +#~ msgid "Sort tags list by popularity" +#~ msgstr "Sorter merkelappliste etter populæritet" + #~ msgid "&Transliterate unicode characters to ASCII." #~ msgstr "&Omskriv unicodetegn til ASCII." @@ -10197,6 +11372,18 @@ msgstr "Ikke last ned CSS stilsett" #~ msgid "&Footer regular expression:" #~ msgstr "&Bunntekst regulært uttrykk:" +#~ msgid "Send specific format to storage card B" +#~ msgstr "Send spesifisert format til lagringskort B" + +#~ msgid "Send specific format to storage card A" +#~ msgstr "Send spesifisert format til lagringskort A" + +#~ msgid "Send specific format to main memory" +#~ msgstr "Send spesifisert format til hovedminnet" + +#~ msgid "and delete from library" +#~ msgstr "og slett fra biblioteket" + #~ msgid "Customize %s" #~ msgstr "Egendefiner %s" @@ -10229,6 +11416,36 @@ msgstr "Ikke last ned CSS stilsett" #~ msgid "Choose a location for your ebook library." #~ msgstr "Velg en lokalisering for ditt e-bokbibliotek" +#~ msgid "" +#~ "\n" +#~ "

      The database of books on the reader is corrupted. Try the " +#~ "following:\n" +#~ "

        \n" +#~ "
      1. Unplug the reader. Wait for it to finish regenerating " +#~ "the database (i.e. wait till it is ready to be used). Plug it back in. Now " +#~ "it should work with %(app)s. If not try the next step.
      2. \n" +#~ "
      3. Quit %(app)s. Find the file media.xml in the reader's " +#~ "main memory. Delete it. Unplug the reader. Wait for it to regenerate the " +#~ "file. Re-connect it and start %(app)s.
      4. \n" +#~ "
      \n" +#~ " " +#~ msgstr "" +#~ "\n" +#~ "

      Bokdatabaser på leseren er ødelagt. Forsøk følgende::\n" +#~ "

        \n" +#~ "
      1. Trekk pluggen ut av leseren. Vent til den har fullført " +#~ "regenereringen av databasen (Det vil si, vent til den er klar til bruk. " +#~ "Plugg inn igjen. Nå skal den virke sammen med %(app)s. Om ikke, forsøk neste " +#~ "trinn.
      2. \n" +#~ "
      3. Stopp %(app)s. Finn filen media.xml i leserens " +#~ "hovedminne. Slett denne. Trekk pluggen ut av leseren. Vent til den " +#~ "regenererer filen. Koble til på nytt og start %(app)s.
      4. \n" +#~ "
      \n" +#~ " " + +#~ msgid "Device database corrupted" +#~ msgstr "Enhetens database er ødelagt" + #~ msgid "" #~ "

      Could not convert: %s

      It is a DRMed book. You must " #~ "first remove the DRM using 3rd party tools." @@ -10251,6 +11468,22 @@ msgstr "Ikke last ned CSS stilsett" #~ "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">new features. " #~ "Besøke nedlastingssiden?" +#~ msgid "Sort by &popularity" +#~ msgstr "Sorter etter &populæritet" + +#~ msgid "Click to turn off Cover Browsing" +#~ msgstr "Klikk for å slå av omslagsgjennomsyn" + +#~ msgid "Click to browse books by their covers" +#~ msgstr "Klikk for å se gjennom bøker sortert etter omslag" + +#~ msgid "" +#~ "

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

      Gjennomsyn av bøker etter omslag er slått av.
      Import av " +#~ "billedflytmodulen gikk galt:
      " + #~ msgid "Starting conversion of %d books" #~ msgstr "Start konverteringen av %d bøker" @@ -10276,6 +11509,12 @@ msgstr "Ikke last ned CSS stilsett" #~ "

      Brukermanual

      En brukermanual er også tilgjengelig online." +#~ msgid "" +#~ "The format in which to output the data. Available choices: %s. Defaults is " +#~ "text." +#~ msgstr "" +#~ "Formatet som utdata skal ha. Valgmuligheter er: %s. Standard er tekst." + #~ msgid "The author sort string" #~ msgstr "Forfatter-sorteringsbane" @@ -10339,6 +11578,9 @@ msgstr "Ikke last ned CSS stilsett" #~ "href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath " #~ "Tutorial." +#~ msgid "Click to browse books by tags" +#~ msgstr "Klikk for å se gjennom bøker etter emneord" + #~ msgid "Communicate with the Sony PRS-600/700 eBook reader." #~ msgstr "Kommuniser med Sony PRS-600/700 eBook reader." @@ -10448,12 +11690,18 @@ msgstr "Ikke last ned CSS stilsett" #~ msgid "This profile is intended for the Hanlin V3/V5 and its clones." #~ msgstr "Denne profilen er ment for Hanlin V3/V5 og dens kloner." +#~ msgid "Communicate with the Sony PRS-300/505/500 eBook reader." +#~ msgstr "Kommuniser med Sony PRS-300/505/500 eBook leser" + #~ msgid "Double click to change a keyborad shortcut" #~ msgstr "Dobbeltklikk for å endre en snarvei" #~ msgid "English (TH)" #~ msgstr "Engelsk (TH)" +#~ msgid "Communicate with the Sony PRS-600/700/900 eBook reader." +#~ msgstr "Kommuniser med Sony PRS-600/700/900 eBook leser." + #~ msgid "The series number. To get leading zeros use {series_index:03n}" #~ msgstr "" #~ "Serienummer. For å få nummer som starter på null, bruk {series_index:03n}" @@ -10488,11 +11736,63 @@ msgstr "Ikke last ned CSS stilsett" #~ msgid "Masthead font:" #~ msgstr "Tegnsett for Mastehode:" +#~ msgid "" +#~ "If an existing book with a similar title and author is found that does not " +#~ "have the format being added, the format is added \n" +#~ "to the existing book, instead of creating a new entry. If the existing book " +#~ "already has the format, then it is silently ignored.\n" +#~ "\n" +#~ "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), " +#~ "punctuation, case, etc. Author match is exact." +#~ msgstr "" +#~ "Dersom en eksisterende bok med likelydende tittel og forfatter er funnet og " +#~ "som mangler formatet som etterspørres, vil formatet legges til \n" +#~ "den eksisterende boken, fremfor å lage en ny oppføring. Dersom den " +#~ "eksisterende boken allerede har formatet, omgås denne i stillhet.\n" +#~ "\n" +#~ "Titteltreff ignorerer ledende ubestemte artikler (\"en\", \"ei\", \"ett\"), " +#~ "punktumer, store bokstaver, osv. Forfatter stemmer helt og fullt." + +#~ msgid "(%d found)" +#~ msgstr "(%d funnet)" + #~ msgid "justify" #~ msgstr "juster" #~ msgid "left" #~ msgstr "venstre" +#~ msgid "" +#~ "Do not use SVG for the book cover. Use this option if your EPUB is going to " +#~ "be used ona device that does not support SVG, like the iPhone or the " +#~ "JetBook Lite. Without this option, such devices will display the cover as a " +#~ "blank page." +#~ msgstr "" +#~ "Ikke benytt SVG for bokomslag. Bruk dette valget dersom din EPUB vil bli " +#~ "brukt på en enhet som ikke støtter SVG, som iPhone eller jetBook Lite. Uten " +#~ "dette valget, vil slike enheter vise omslaget som en tom side." + +#~ msgid "Editing meta information for %d books" +#~ msgstr "Redigering av metadata for %d bøker" + +#~ msgid "Merge books" +#~ msgstr "Slå sammen bøker" + #~ msgid "original" #~ msgstr "original" + +#~ msgid "" +#~ "The value %d you have chosen for the content server port is a system " +#~ "port. You operating system may not allow the server to run on this " +#~ "port. To be safe choose a port number larger than 1024." +#~ msgstr "" +#~ "Verdien %d du valgte som innholdserverport er en systemport. " +#~ "Operativsystemet ditt vil kanskje ikke tillate at serveren kjører " +#~ "under denne porten. For å være sikker kan du velge et portnummer som er " +#~ "høyere enn 1024." + +#~ msgid "Communicate with iBooks through iTunes." +#~ msgstr "Kommuniser med iBooks via iTunes." + +#~ msgid "Connect to iTunes (EXPERIMENTAL)" +#~ msgstr "Knytt til iTunes (EKSPERIMENTELT)" diff --git a/src/calibre/translations/nl.po b/src/calibre/translations/nl.po index d3c63e62b5..43db49b2f2 100644 --- a/src/calibre/translations/nl.po +++ b/src/calibre/translations/nl.po @@ -7,19 +7,19 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-05-21 22:47+0000\n" -"PO-Revision-Date: 2010-05-21 07:14+0000\n" -"Last-Translator: Jeroen Hellingman \n" +"POT-Creation-Date: 2010-07-03 01:21+0000\n" +"PO-Revision-Date: 2010-07-07 21:33+0000\n" +"Last-Translator: Bart Bone \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: 2010-05-22 03:56+0000\n" +"X-Launchpad-Export-Date: 2010-07-08 03:47+0000\n" "X-Generator: Launchpad (build Unknown)\n" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:362 msgid "Set metadata from %s files" -msgstr "Stel metadata van %s bestanden in" +msgstr "Stel metagegevens van %s bestanden in" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43 msgid "Does absolutely nothing" @@ -27,39 +27,40 @@ msgstr "Doet helemaal niets" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:46 #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:72 -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:75 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:71 #: /home/kovid/work/calibre/src/calibre/devices/prs500/books.py:267 -#: /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/driver.py:204 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:396 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/chm/metadata.py:56 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:69 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:332 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:335 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:338 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1894 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1896 #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:24 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:230 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:264 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:364 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:235 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:276 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:279 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:20 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:46 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:317 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:36 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:62 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:64 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:118 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:120 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:329 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:444 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:912 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:123 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:125 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:945 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1057 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:39 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:28 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pml.py:23 @@ -75,9 +76,9 @@ msgstr "Doet helemaal niets" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:818 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:49 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:909 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:914 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:980 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:910 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:915 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:981 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:139 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 @@ -101,50 +102,53 @@ msgstr "Doet helemaal niets" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:63 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:81 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:82 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:87 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:88 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:97 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:233 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:235 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:279 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:286 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:170 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:574 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:583 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:460 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:419 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:441 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:969 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1096 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1694 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1697 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:290 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:297 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:815 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:22 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:903 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1192 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1054 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:185 -#: /home/kovid/work/calibre/src/calibre/library/cli.py:311 +#: /home/kovid/work/calibre/src/calibre/library/cli.py:213 #: /home/kovid/work/calibre/src/calibre/library/database.py:913 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:248 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:260 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:680 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:717 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1111 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1113 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1235 -#: /home/kovid/work/calibre/src/calibre/library/server.py:671 -#: /home/kovid/work/calibre/src/calibre/library/server.py:747 -#: /home/kovid/work/calibre/src/calibre/library/server.py:794 -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114 -#: /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/library/database2.py:335 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:347 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:950 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1620 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1622 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1744 +#: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:268 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:134 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:137 +#: /home/kovid/work/calibre/src/calibre/library/server/xml.py:68 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:115 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:46 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:64 +#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:78 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:50 msgid "Unknown" @@ -160,13 +164,13 @@ msgstr "Bestandstype" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:206 msgid "Metadata reader" -msgstr "Metadatalezer" +msgstr "Metagegevens lezer" -#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:237 +#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:235 msgid "Metadata writer" -msgstr "Metadataschrijver" +msgstr "Metagegevens schrijver" -#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:267 +#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:263 msgid "Catalog generator" msgstr "Catalogus generator" @@ -180,7 +184,7 @@ msgstr "" "gelinkte bestanden. Deze plug-in wordt elke keer wanneer u een HTML-bestand " "aan de bibliotheek toevoegt uitgevoerd." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:50 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:51 msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." @@ -188,7 +192,7 @@ msgstr "" "Karaktercodering voor de invoer HTML-bestanden. Standaard keuzes zijn: " "cp1252, latin1, iso-8859-1 en utf-8." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:57 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:58 msgid "" "Create a PMLZ archive containing the PML file and all images in the " "directory pmlname_img or images. This plugin is run every time you add a PML " @@ -198,47 +202,47 @@ msgstr "" "of images bevat. Deze plug-in wordt steeds uitgevoerd als een PML-bestand " "aan de bibliotheek wordt toegevoegd." -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:89 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:90 msgid "Extract cover from comic files" msgstr "Haal de omslag uit bestanden met stripverhalen" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:127 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:139 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:149 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:159 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:170 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:180 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:190 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:200 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:210 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:220 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:231 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:242 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:254 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:275 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:286 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:296 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:306 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:117 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:128 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:140 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:150 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:160 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:171 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:181 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:191 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:201 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:211 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:221 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:243 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:255 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:276 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:287 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:297 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:307 msgid "Read metadata from %s files" -msgstr "Lees metadata van de %s bestanden" +msgstr "Lees de Metagegevens uit %s bestanden" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:265 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:266 msgid "Read metadata from ebooks in RAR archives" -msgstr "Lees metadata van eboeken in RAR-archieven" +msgstr "Lees de metagegevens van ebooks in RAR archieven" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:317 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:318 msgid "Read metadata from ebooks in ZIP archives" -msgstr "Lees metadata van eboeken in ZIP-archieven" +msgstr "Lees metagegevens van eboeken in ZIP-archieven" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:328 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:338 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:348 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:370 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:381 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:391 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:331 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:341 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:351 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:384 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:394 msgid "Set metadata in %s files" -msgstr "Stel metadata van %s bestanden in" +msgstr "Stel metagegevens van %s bestanden in" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:102 msgid "Conversion Input" @@ -265,9 +269,9 @@ msgid "" "If specified, the output plugin will try to create output that is as human " "readable as possible. May not have any effect for some output plugins." msgstr "" -"Indien ingesteld, zal de uitvoerplugin proberen om uitvoer te maken die zo " -"leesbaar mogelijk is. Het kan zijn dat dit geen enkel effect heeft op " -"sommige uitvoerplugins." +"Indien opgegeven, zal de uitvoerplug-in proberen om uitvoer te genereren die " +"zo leesbaar mogelijk is. Het kan zijn dat dit op sommige uitvoerplug-ins " +"geen enkel effect heeft." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:45 msgid "Input profile" @@ -282,7 +286,7 @@ msgstr "" "niets over het invoer document weet." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:57 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:258 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:412 msgid "" "This profile is intended for the SONY PRS line. The 500/505/600/700 etc." msgstr "" @@ -293,70 +297,70 @@ msgid "This profile is intended for the SONY PRS 300." msgstr "Dit profiel is bedoeld voor de SONY PRS 300." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:78 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:292 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:447 msgid "This profile is intended for the SONY PRS-900." msgstr "Dit profiel is bedoeld voor de SONY PRS-900." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:86 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:322 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:477 msgid "This profile is intended for the Microsoft Reader." msgstr "Dit profiel is bedoeld voor de Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:97 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:333 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:488 msgid "This profile is intended for the Mobipocket books." msgstr "Dit profiel is bedoeld voor de Mobipocket boeken." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:110 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:346 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:501 msgid "This profile is intended for the Hanlin V3 and its clones." msgstr "Dit profiel is bedoeld voor de Hanlin V3 en zijn afgeleiden." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:122 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:358 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:513 msgid "This profile is intended for the Hanlin V5 and its clones." msgstr "Dit profiel is bedoeld voor de Hanlin V5 en zijn afgeleiden." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:132 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:366 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:521 msgid "This profile is intended for the Cybook G3." msgstr "Dit profiel is bedoeld voor de Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:145 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:379 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:534 msgid "This profile is intended for the Cybook Opus." msgstr "Dit profiel is bedoeld voor de Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:157 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:390 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:545 msgid "This profile is intended for the Amazon Kindle." msgstr "Dit profiel is bedoeld voor de Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:169 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:580 msgid "This profile is intended for the Irex Illiad." msgstr "Dit profiel is bedoeld voor de Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:181 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:593 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "Dit profiel is bedoeld voor de IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:452 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:607 msgid "This profile is intended for the IRex Digital Reader 800." msgstr "Dit profiel is bestemd voor de IRex Digital Reader 800." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:466 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:621 msgid "This profile is intended for the B&N Nook." msgstr "Dit profiel is bedoeld voor de B&N Nook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:226 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:228 msgid "Output profile" msgstr "Uitvoerprofiel" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:232 msgid "" "This profile tries to provide sane defaults and is useful if you want to " "produce a document intended to be read at a computer or on a range of " @@ -365,32 +369,33 @@ msgstr "" "Dit profiel probeert zinnige instellingen te gebruiken, en is handig om een " "document te maken dat op een computer of meedere apparaten gelezen wordt." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:248 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:257 msgid "" "Intended for the iPad and similar devices with a resolution of 768x1024" msgstr "" +"Bedoeld voor de iPad en soortgelijke apparaten met een resolutie van 768x1024" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:271 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:425 msgid "This profile is intended for the Kobo Reader." msgstr "Dit profiel is bedoeld voor de Kobo Reader." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:283 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:438 msgid "This profile is intended for the SONY PRS-300." msgstr "Dit profiel is bedoeld voor de SONY PRS-300" -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:301 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:456 msgid "This profile is intended for the 5-inch JetBook." msgstr "Dit profiel is bedoeld voor de 5-inch JetBook." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:310 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:465 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." msgstr "" "Dit profiel is bedoeld voor de SONY PRS reeks. De 300/600 etc, in " -"landschapsmodus. Vooral handig voor stripboeken." +"horizontale schermmodus. Vooral handig voor stripboeken." -#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:408 +#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:563 msgid "This profile is intended for the Amazon Kindle DX." msgstr "Dit profiel is bedoeld voor de Amazon Kindle DX." @@ -410,15 +415,19 @@ msgstr "Lokale plug-in aanpassing" msgid "Disabled plugins" msgstr "Uitgeschakelde plugins" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:77 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:35 +msgid "Enabled plugins" +msgstr "Ingeschakelde plug-ins" + +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:83 msgid "No valid plugin found in " msgstr "Geen geldige plugin gevonden in " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:278 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:460 msgid "Initialization of plugin %s failed with traceback:" msgstr "Initialisatie van de plugin %s is mislukt met een traceback:" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:433 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:493 msgid "" " %prog options\n" "\n" @@ -426,22 +435,23 @@ msgid "" " " msgstr "" " %prog opties\n" -" Pas Calibre aan door laden van externe plugins\n" +"\n" +" Pas calibre aan door externe plug-ins te laden.\n" " " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:439 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:499 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "" -"Voeg een plugin toe door het pad op te geven naar het zip bestand waarin het " -"zich bevindt." +"Voeg een plug-in toe door het pad op te geven naar het zip-bestand waarin " +"deze zich bevindt." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:441 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:501 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" -"Verwijder een optionele plugin op naam. Heeft geen effect op ingebouwde " -"plugins" +"Verwijder een aangepaste plug-in op naam. Heeft geen effect op ingebouwde " +"plug-ins" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:443 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:503 msgid "" "Customize plugin. Specify name of plugin and customization string separated " "by a comma." @@ -449,15 +459,15 @@ msgstr "" "Personaliseer plugin. Geef een naam van een plugin en personalisatie string " "gescheiden met een komma." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:445 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:505 msgid "List all installed plugins" msgstr "Toon geïnstalleerde plugins" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:447 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:507 msgid "Enable the named plugin" msgstr "Activeer de genoemde plugin" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:449 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:509 msgid "Disable the named plugin" msgstr "Deactiveer de genoemde plugin" @@ -465,7 +475,7 @@ msgstr "Deactiveer de genoemde plugin" msgid "Communicate with Android phones." msgstr "Communiceer met Android telefoons." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:39 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:45 msgid "" "Comma separated list of directories to send e-books to on the device. The " "first one that exists will be used" @@ -473,10 +483,80 @@ msgstr "" "Komma-gescheiden lijst van folders om e-boeken naar toe te sturen op het " "apparaat. De eerste die wordt gevonden zal worden gebruikt." -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:77 msgid "Communicate with S60 phones." msgstr "Communiceert met S60 telefoons" +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:87 +msgid "Communicate with iTunes/iBooks." +msgstr "Communiceer met iTunes / iBooks." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:93 +msgid "Apple device detected, launching iTunes, please wait ..." +msgstr "Apple apparaat gevonden, iTunes wordt gestart, even geduld…" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:246 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:249 +msgid "Updating device metadata listing..." +msgstr "Bijwerken van metagegevens lijst op het apparaat…" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:362 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:921 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:957 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2791 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2830 +msgid "%d of %d" +msgstr "%d van %d" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:962 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2836 +msgid "finished" +msgstr "voltooid" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:544 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Gebruik Series als categorie in iTunes / iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:546 +msgid "Cache covers from iTunes/iBooks" +msgstr "Cache covers van iTunes / iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:558 +msgid "" +"Some books not found in iTunes database.\n" +"Delete using the iBooks app.\n" +"Click 'Show Details' for a list." +msgstr "" +"Sommige boeken niet gevonden in de iTunes database.\n" +"Verwijder met behulp van de iBooks app.\n" +"Klik op 'Details weergeven' voor een lijst." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:886 +msgid "" +"Some cover art could not be converted.\n" +"Click 'Show Details' for a list." +msgstr "" +"Sommige omslagafbeeldingen konden niet worden omgezet.\n" +"Klik op 'Details weergeven' voor een overzicht." + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2471 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:807 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:813 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:841 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:239 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:167 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:180 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1504 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:128 +msgid "News" +msgstr "Nieuws" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2698 +msgid "Communicate with iTunes." +msgstr "Verbinden met iTunes." + #: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 msgid "Communicate with the Binatone Readme eBook reader." msgstr "Communiceer met de Binatone eBoek lezer." @@ -499,6 +579,14 @@ msgstr "Communiceer met de Cybook Gen 3 / Opus eboek lezer." msgid "Communicate with the EB600 eBook reader." msgstr "Communiceer met de EB600 e-boek lezer." +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:193 +msgid "Communicate with the Astak Mentor EB600" +msgstr "Verbinden met Astak Mentor EB600" + +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:216 +msgid "Communicate with the PocketBook 301 reader." +msgstr "Verbinden met PocketBook 301 reader." + #: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17 msgid "Entourage Edge" msgstr "Entourage Edge" @@ -511,31 +599,55 @@ msgstr "Communiceert met de Entourage Edge." msgid "Communicate with the ESlick eBook reader." msgstr "Communiceer met de ESlick e-boek lezer." +#: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:49 +msgid "Communicate with the Sigmatek eBook reader." +msgstr "Er wordt met de Sigmatek eBook reader gecommuniceerd." + +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:16 +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:30 +msgid "Use an arbitrary folder as a device." +msgstr "Gebruik een willekeurige map als apparaat." + +#: /home/kovid/work/calibre/src/calibre/devices/folder_device/driver.py:26 +#: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 +msgid "Device Interface" +msgstr "apparaat interface" + #: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:19 msgid "Communicate with Hanlin V3 eBook readers." msgstr "Communiceer met Hanlin V3 eboek lezers." -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:95 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:87 msgid "Communicate with Hanlin V5 eBook readers." msgstr "Communiceer met Hanlin V5 eBoek lezers." -#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:114 +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:106 msgid "Communicate with the BOOX eBook reader." msgstr "Communiceer met de BOOX eBoek lezer." +#: /home/kovid/work/calibre/src/calibre/devices/hanlin/driver.py:121 +msgid "" +"Comma separated list of directories to send e-books to on the device. The " +"first one that exists will be used." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:18 msgid "Communicate with the Hanvon N520 eBook reader." msgstr "Communiceer met de Hanvon N520 eBoek lezer." -#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:41 +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:40 +msgid "Communicate with The Book reader." +msgstr "Er wordt met de The Book reader gecommuniceerd." + +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:51 msgid "Communicate with the SpringDesign Alex eBook reader." msgstr "Communiceert met de SpringDesign Alex eBook reader." -#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:67 msgid "Communicate with the Azbooka" -msgstr "" +msgstr "Verbinden met de Azbooka" -#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:80 msgid "Communicate with the Elonex EB 511 eBook reader." msgstr "Communicatie met Elonex EB511 ebook reader" @@ -545,14 +657,10 @@ msgstr "Communiceer met de IRex Illiad e-boek lezer." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:17 #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:18 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:29 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:38 msgid "John Schember" msgstr "John Schember" -#: /home/kovid/work/calibre/src/calibre/devices/interface.py:23 -msgid "Device Interface" -msgstr "apparaat interface" - #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:16 msgid "Communicate with the IRex Digital Reader 1000 eBook reader." msgstr "Communiceer met de IRex Digital Reader 1000 e-boek lezer." @@ -569,29 +677,67 @@ msgstr "Communiceer met de Iriver Story lezer." msgid "Communicate with the JetBook eBook reader." msgstr "Communiceer met de JetBook e-boek lezer." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:21 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:42 msgid "Communicate with the Kindle eBook reader." msgstr "Communiceer met de Kindle e-boek lezer." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:152 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:169 msgid "Communicate with the Kindle 2 eBook reader." msgstr "Communiceer met de Kindle 2 e-boek lezer." -#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:162 +#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:210 msgid "Communicate with the Kindle DX eBook reader." msgstr "Communiceer met de Kindle DX eBook lezer." +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:22 +msgid "Communicate with the Kobo Reader" +msgstr "Communiceer met de Kobo Reader" + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:51 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:54 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:57 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:157 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:64 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:67 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:130 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:137 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:160 +msgid "Getting list of books on device..." +msgstr "Bezig met het ophalen van boeken van het apparaat..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:258 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:244 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:262 +msgid "Removing books from device..." +msgstr "Bezig om boeken te verwijderen van apparaat..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:262 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:269 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:274 +msgid "Removing books from device metadata listing..." +msgstr "Verwijderen boeken van apparaat metagegevens lijst..." + +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:274 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:308 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:208 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:238 +msgid "Adding books to device metadata listing..." +msgstr "Toevoegen boeken aan apparaat metagegevens lijst..." + #: /home/kovid/work/calibre/src/calibre/devices/misc.py:15 msgid "Communicate with the Palm Pre" msgstr "Communiceer met de Palm Pre" #: /home/kovid/work/calibre/src/calibre/devices/misc.py:35 -msgid "Communicate with the Kobo Reader" -msgstr "Communiceer met de Kobo Reader" - -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:56 msgid "Communicate with the Booq Avant" -msgstr "" +msgstr "Verbinden met de Booq Avant" + +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:55 +msgid "Communicate with the Sweex MM300" +msgstr "Communiceer met de Sweex MM300" #: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:17 msgid "Communicate with the Nokia 770 internet tablet." @@ -601,6 +747,10 @@ msgstr "Communiceer met Nokia 770 internet tablet." msgid "Communicate with the Nokia 810 internet tablet." msgstr "Communiceer met het Nokia 810 internet tablet." +#: /home/kovid/work/calibre/src/calibre/devices/nokia/driver.py:74 +msgid "Communicate with the Nokia E52" +msgstr "Communiceer met de Nokia E52" + #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:20 msgid "The Nook" msgstr "De Nook" @@ -617,54 +767,22 @@ msgstr "Communiceer met de Nuut2 eBook lezer." msgid "Communicate with the Sony PRS-500 eBook reader." msgstr "Communiceer met de Sony PRS-500 e-boek lezer." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:150 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:104 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:107 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:110 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:121 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:44 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:47 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:50 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:70 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:80 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:89 -msgid "Getting list of books on device..." -msgstr "Bezig met het ophalen van boeken van het apparaat..." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:22 +msgid "Communicate with all the Sony eBook readers." +msgstr "Verbinden met alle Sony eBook readers." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:26 -msgid "Communicate with the Sony PRS-300/505/500 eBook reader." -msgstr "Communiceer met de Sony PRS-300/505/500 eBoek lezer." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:58 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " msgstr "" -"Komma gescheiden lijst van metdata velden om in collecties te veranderen op " -"de lezer. Mogelijkheden onder andere: " +"Komma gescheiden lijst van metagegevens velden om in collecties te " +"veranderen op de lezer. Mogelijkheden onder andere: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:149 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:151 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:115 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:117 -msgid "Transferring books to device..." -msgstr "Bezig om de boeken naar het aparaat over te zetten..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:189 -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:196 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:144 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:161 -msgid "Removing books from device..." -msgstr "Bezig om boeken te verwijderen van apparaat..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:224 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:176 -msgid "Sending metadata to device..." -msgstr "Versturen van metadata naar apparaat..." - -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:230 -msgid "Communicate with the Sony PRS-600/700/900 eBook reader." -msgstr "Communiceer met de Sony PRS-600/700/900 eBoek lezer." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:140 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 +msgid "Unnamed" +msgstr "Naamloos" #: /home/kovid/work/calibre/src/calibre/devices/sne/driver.py:17 msgid "Communicate with the Samsung SNE eBook reader." @@ -674,15 +792,15 @@ msgstr "Communiceert met de Samsung SNE eBook reader" msgid "Communicate with the Teclast K3 reader." msgstr "Communicatie met Telecast K3 Reader" -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:45 +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:37 msgid "Communicate with the Newsmy reader." -msgstr "" +msgstr "Verbinden met de Newsmy reader." -#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:60 +#: /home/kovid/work/calibre/src/calibre/devices/teclast/driver.py:49 msgid "Communicate with the iPapyrus reader." -msgstr "" +msgstr "Communiceer met de iPapyrus reader." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:252 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:245 msgid "Unable to detect the %s disk drive. Try rebooting." msgstr "Schijf %s is niet gevonden. Probeer te herstarten." @@ -719,72 +837,65 @@ msgstr "De lezer heeft geen opslag kaart in dit slot." msgid "Selected slot: %s is not supported." msgstr "Geselecteerd slot: %s is niet ondersteund." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:773 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:779 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:781 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:775 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:777 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:811 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:817 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:842 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:240 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:589 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:995 -msgid "News" -msgstr "Nieuws" - #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:12 msgid "Configure Device" msgstr "Apparaat configureren" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:28 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:37 msgid "settings for device drivers" msgstr "Instellingen voor apparaat besturing drivers" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:30 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 msgid "Ordered list of formats the device will accept" msgstr "Gesorteerde lijst van formaten die de lezer ondersteunt" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:32 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:41 msgid "Place files in sub directories if the device supports them" msgstr "Plaats bestanden in submappen als de lezer die ondersteunt" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 msgid "Read metadata from files on device" -msgstr "Lees metainformatie van de bestanden op de lezer" +msgstr "Lees de metagegevens van de bestanden op de lezer" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:45 +msgid "Use author sort instead of author" +msgstr "Gebruik de sortering op auteur instelling i.p.v. de auteur" + +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:47 msgid "Template to control how books are saved" msgstr "Sjabloon dat bepaald hoe boeken worden opgeslagen" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:39 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84 msgid "Extra customization" msgstr "Extra Persoonlijke instellingen" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:28 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:37 msgid "Communicate with an eBook reader." msgstr "Communiceer met een e-boek lezer." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:36 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:53 msgid "Get device information..." msgstr "Haal lezer informatie op..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:132 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:140 -msgid "Adding books to device metadata listing..." -msgstr "Toevoegen boeken aan apparaat metadata lijst..." +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:188 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 +msgid "Transferring books to device..." +msgstr "Bezig om de boeken naar het aparaat over te zetten..." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:165 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:170 -msgid "Removing books from device metadata listing..." -msgstr "Verwijderen boeken van apparaat metadata lijst..." +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:305 +msgid "Sending metadata to device..." +msgstr "Versturen van metagegevens naar apparaat..." #: /home/kovid/work/calibre/src/calibre/ebooks/chm/reader.py:41 msgid "%prog [options] mybook.chm" @@ -1068,7 +1179,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:155 msgid "Options to set metadata in the output" -msgstr "Opties om metadata in te stellgen voor de uitvoer" +msgstr "Opties om metagegevens in te stellen voor de uitvoer" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:158 msgid "Options to help with debugging the conversion" @@ -1388,8 +1499,8 @@ msgid "" "Insert the book metadata at the start of the book. This is useful if your " "ebook reader does not support displaying/searching metadata directly." msgstr "" -"Voeg metadata toe in aan het begin van het boek. This is handig als uw eboek " -"lezer het weergeven/zoeken van metadata niet direct ondersteund." +"Voeg metagegevens toe in aan het begin van het boek. Dit is handig als uw " +"eReader het weergeven/zoeken van metagegevens niet direct ondersteund." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:359 msgid "" @@ -1425,8 +1536,8 @@ msgid "" "Read metadata from the specified OPF file. Metadata read from this file will " "override any metadata in the source file." msgstr "" -"Lees metadata van het opgegeven OPF bestand. Metadata die hier word gelezen " -"krijgt voorrang over metadata in het invoer bestand." +"Lees metagegevens uit het opgegeven OPF bestand. Metagegevens die hier " +"worden gelezen krijgt voorrang over metagegevens in het invoer bestand." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:401 msgid "" @@ -1453,6 +1564,12 @@ msgid "" "corresponding pair of normal characters. This option will preserve them " "instead." msgstr "" +"Bewaar ligaturen aanwezig in het invoer document. Een ligatuur is een " +"speciale weergave van een paar tekens zoals ff, fi, fl enz. De meeste lezers " +"hebben geen ondersteuning voor ligaturen in hun standaard lettertypes, dus " +"ze worden waarschijnlijk niet juist weergegeven. Standaard zal calibre een " +"ligatuur om zetten in het overeenkomstige paar normale tekens. Deze optie " +"zal ze in plaats daarvan behouden." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:38 @@ -1544,19 +1661,19 @@ msgstr "" msgid "Failed to parse date/time" msgstr "Geen geldige datum/tijd gevonden" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:802 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:809 msgid "Converting input to HTML..." msgstr "Converteer invoer naar HTML..." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:829 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:836 msgid "Running transforms on ebook..." msgstr "Transformaties worden toegepast op eboek..." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:916 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:923 msgid "Creating" msgstr "Aanmaken" -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:205 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:56 msgid "" "Extract the contents of the generated EPUB file to the specified directory. " "The contents of the directory are first deleted, so be careful." @@ -1565,7 +1682,7 @@ msgstr "" "folder. De inhoud van de folder zal eerst worden verwijderd, dus wees " "voorzichtig." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:211 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:62 msgid "" "Turn off splitting at page breaks. Normally, input files are automatically " "split at every page break into two files. This gives an output ebook that " @@ -1580,7 +1697,7 @@ msgstr "" "je bron bestand een groot aantal paginas bevat dan kun je deze splitsing " "uitschakelen." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:222 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:73 msgid "" "Split all HTML files larger than this size (in KB). This is necessary as " "most EPUB readers cannot handle large file sizes. The default of %defaultKB " @@ -1591,7 +1708,7 @@ msgstr "" "kunnen. De standaard van %defaultKB is de grootte die nodig is voor Adobe " "Digital Editions." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:229 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:80 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 " @@ -1601,19 +1718,19 @@ msgstr "" "niet expliciet een is opgegeven, dan zal er een standaard omslag worden " "gegenereert met daarop de titel, auteurs, etc. Deze optie schakelt dit uit." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:235 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86 msgid "" "Do not use SVG for the book cover. Use this option if your EPUB is going to " -"be used ona device that does not support SVG, like the iPhone or the " +"be used on a device that does not support SVG, like the iPhone or the " "JetBook Lite. Without this option, such devices will display the cover as a " "blank page." msgstr "" -"Gebruik geen SVG voor de omslag van het boek. Gebruik deze optie als je EPUB " -"gebruikt gaat worden op een apparaat dat geen SVG ondersteunt, zoals de " -"iPhone of de JetBook Lite. Zonder deze optie zullen dergelijke apparaten de " -"omslag weergeven als een lege pagina." +"Gebruik geen SVG voor de omslag van het boek. Gebruik deze optie als uw EPUB " +"gebruikt gaat worden op een apparaat dat SVG niet ondersteunt, zoals de " +"iPhone of de JetBook Lite. Zonder deze optie, zullen deze apparaten de " +"omslag van het boek als een lege pagina laten zien." -#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94 msgid "" "When using an SVG cover, this option will cause the cover to scale to cover " "the available screen area, but still preserve its aspect ratio (ratio of " @@ -1621,6 +1738,16 @@ msgid "" "and bottom of the image, but the image will never be distorted. Without this " "option the image may be slightly distorted, but there will be no borders." msgstr "" +"Bij gebruik van een SVG hoes, zal deze optie ervoor zorgen dat de hoes het " +"hele scherm zal bedekken, maar toch de aspect ratio (verhouding van breedte " +"en hoogte) zal behouden. Dit betekent dat er sprake kan zijn van hoezen met " +"witte randen aan de zijkanten of de boven-en onderkant van het beeld, maar " +"het beeld zal nooit worden verstoord. Zonder deze optie kan het beeld " +"enigszins worden verstoord, maar er zullen geen randen zijn." + +#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:169 +msgid "Start" +msgstr "Start" #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:144 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:102 @@ -1640,7 +1767,7 @@ msgstr "Voeg geen inhoudsopgave toe aan het begin van het boek." msgid "Add Table of Contents to beginning of the book." msgstr "Voeg inhoudsopgave toe aan het begin van het boek." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:243 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248 msgid "" "Traverse links in HTML files breadth first. Normally, they are traversed " "depth first." @@ -1648,7 +1775,7 @@ msgstr "" "Volg links in HTML bestanden eerst in de breedte Normaal gesproken zullen " "ze eerst in de diepte worden gevolgd." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:250 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255 msgid "" "Maximum levels of recursion when following links in HTML files. Must be non-" "negative. 0 implies that no links in the root HTML file are followed. " @@ -1658,7 +1785,7 @@ msgstr "" "niet negatief zijn. 0 geeft aan dat geen links in het kern HTML bestand " "zijn toegestaan. Standaard is %default." -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:259 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264 msgid "" "Normally this input plugin re-arranges all the input files into a standard " "folder hierarchy. Only use this option if you know what you are doing as it " @@ -1670,7 +1797,7 @@ msgstr "" "doet, omdat het kan resulteren in verscheidene rommelige effecten met de " "rest van het conversie systeem" -#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:267 +#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:272 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." @@ -1816,7 +1943,7 @@ msgid "Path to output file" msgstr "Pad naar doel bestand" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:114 msgid "Verbose processing" msgstr "uitgebreide verwerking" @@ -1826,7 +1953,7 @@ msgstr "converteer LRS naar LRF, handig om fouten op te sporen." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:457 msgid "Invalid LRF file. Could not set metadata." -msgstr "Foutief LRF bestand. Metadata kan niet worden ingesteld." +msgstr "Foutief LRF bestand. Metagegevens kunnen niet worden ingesteld." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:582 msgid "" @@ -1839,7 +1966,7 @@ msgstr "" "%prog [opties] mijnboek.lrf\n" "\n" "\n" -"Weergave/wijzig de metadata in een LRF bestand\n" +"Weergave/wijzig de metagegevens in een LRF bestand\n" "\n" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:603 @@ -1913,80 +2040,86 @@ msgstr "De monospace familie om toe te voegen" msgid "Comic" msgstr "Stripverhaal" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:363 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:389 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:882 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:543 msgid "Title" msgstr "Titel" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:364 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:175 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:421 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1160 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:883 msgid "Author(s)" msgstr "Auteur(s)" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:365 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:180 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72 msgid "Publisher" msgstr "Uitgeverij" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:366 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:392 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "Producent" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:211 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:99 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:95 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1073 msgid "Comments" msgstr "Opmerkingen" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:181 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:366 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1104 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1163 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:97 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:27 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1069 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:139 msgid "Tags" msgstr "Labels" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:96 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:26 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:87 msgid "Series" msgstr "Serie" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:378 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:404 msgid "Language" msgstr "Taal" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:380 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1103 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1061 msgid "Timestamp" msgstr "Tijdsaanduiding" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:382 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:66 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:178 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70 msgid "Published" msgstr "Gepubliceerd" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:410 msgid "Rights" msgstr "Rechten" @@ -1994,7 +2127,7 @@ msgstr "Rechten" msgid "EDITORIAL REVIEW" msgstr "REDACTIONELE BEOORDELING" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41 msgid "" "Extract common e-book formats from archives (zip/rar) files. Also try to " "autodetect if they are actually cbz/cbr files." @@ -2020,15 +2153,16 @@ msgid "" "silently ignored.\n" msgstr "" "\n" -"Lees/Schrijf metadata van/naar eboek bestanden.\n" +"Lees/Schrijf metagegevens van/naar eboek bestanden.\n" "\n" -"Ondersteunde formaten voor lezen van metadata: %s\n" +"Ondersteunde formaten voor het lezen van metagegevens: %s\n" "\n" -"Ondersteunde formaten voor schrijven van metadata: %s\n" +"Ondersteunde formaten voor het schrijven van metagegevens: %s\n" "\n" -"Verschillende bestandstypen ondersteunden verschillende soorten metadata. " -"Als je probeerd sommige metadata in te stellen op een bestandstype dat het " -"niet ondersteund, dan zal deze metadata stil genegeerd worden.\n" +"Verschillende bestandstypen ondersteunden verschillende soorten " +"metagegevens. Als je probeert sommige metagegevens in te stellen op een " +"bestandstype die dat niet ondersteund, dan zullen deze metagegevens " +"genegeerd worden.\n" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:40 msgid "" @@ -2078,8 +2212,8 @@ msgid "" "Specify the name of an OPF file. The metadata will be written to the OPF " "file." msgstr "" -"Geef de naam van een OPF bestand op. De metadata zal worden opgeslagen in " -"het OPF bestand." +"Geef de naam van een OPF bestand op. De metagegevens zullen in het OPF " +"bestand worden opgeslagen." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:83 msgid "" @@ -2087,9 +2221,10 @@ msgid "" "ebook. Metadata specified on the command line will override metadata read " "from the OPF file" msgstr "" -"Lees metadata van het opgegeven OPF bestand en gebruik dit om de metadata in " -"het eboek in te stellen. Metadata opgegeven op de command regel neemt " -"voorrang op metadata die in het OPF bestand word gevonden." +"Lees metagegevens uit het opgegeven OPF bestand en gebruik deze om de " +"metagegevens in het eboek in te stellen. Metagegevens opgegeven op de " +"commando regel hebben voorrang boven de metagegevens die zich in het OPF " +"bestand bevinden." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:88 msgid "Set the BookID in LRF files" @@ -2101,15 +2236,15 @@ msgstr "Geen bestand opgegeven" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:168 msgid "Original metadata" -msgstr "Originele Metadata" +msgstr "Originele metagegevens" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:185 msgid "Changed metadata" -msgstr "Veranderde metdata" +msgstr "Gewijzigde metagegevens" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:197 msgid "OPF created in" -msgstr "Veranderde Metadata" +msgstr "OPF gemaakt in" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:203 msgid "Cover saved to" @@ -2119,9 +2254,17 @@ msgstr "omslag weggeschreven naar" msgid "No cover found" msgstr "Geen kaft gevonden" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/covers.py:15 +msgid "Cover download" +msgstr "Boek omslag download" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/douban.py:42 +msgid "Downloads metadata from Douban.com" +msgstr "Download metagegevens van Douban.com" + #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:34 msgid "Metadata download" -msgstr "Metadata download" +msgstr "Metagegevens download" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:111 msgid "ratings" @@ -2139,15 +2282,15 @@ msgstr "Omschrijving/Beoordelingen" msgid "Download %s from %s" msgstr "Download %s van %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:137 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:139 msgid "Downloads metadata from Google Books" -msgstr "Download metadata van Google Books" +msgstr "Download metagegevens van Google Books" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:153 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:156 msgid "Downloads metadata from isbndb.com" -msgstr "Download metadata van isbndb.com" +msgstr "Download metagegevens van isbndb.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:184 msgid "" "To use isbndb.com you must sign up for a %sfree account%s and enter your " "access key below." @@ -2155,11 +2298,15 @@ msgstr "" "Om isbndb.com te gebruiken moet je je opgeven voor een %sgratis account%s, " "en je toegangs sleutel hieronder invoeren." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:189 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:194 msgid "Downloads social metadata from amazon.com" -msgstr "Download sociale metadata van amazon.com" +msgstr "Download sociale metadata (labels, waarderingen, etc) van amazon.com" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:213 +msgid "Downloads series/tags/rating information from librarything.com" +msgstr "Download series/labels/waardering-informatie van librarything.com" + +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:95 msgid "" "\n" "%prog [options] key\n" @@ -2175,8 +2322,8 @@ msgstr "" "\n" "%prog [opties] sleutel\n" "\n" -"Haal metadata voor boeken van isbndb.com. JE kunt of het ISBN nummer of de " -"titel en auteur opgeven.\n" +"Haal metagegevens voor boeken van isbndb.com. Je kunt of het ISBN nummer of " +"de titel en auteur opgeven.\n" "als je de titel en auteur opgeeft, dan is het mogelijk dat er meerdere " "resultaten zijn.\n" "\n" @@ -2184,27 +2331,27 @@ msgstr "" "een gratis account op isbndb.com.\n" "\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:105 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:106 msgid "The ISBN ID of the book you want metadata for." -msgstr "Het ISBN ID van het boek dat je de metadata voor wilt." +msgstr "Het ISBN Nr van het boek waarvoor je de metagegevens wilt." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:108 msgid "The author whose book to search for." msgstr "De auteur van het boek om naar te zoeken." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:110 msgid "The title of the book to search for." msgstr "De titel van het boek om naar te zoeken." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:112 msgid "The publisher of the book to search for." msgstr "De uitgever van het boek om naar te zoeken." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:53 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:68 msgid "LibraryThing.com timed out. Try again later." msgstr "Verbinding met LibraryThing.com verbroken. Probeer later nog eens." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:60 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75 msgid "" "Could not fetch cover as server is experiencing high load. Please try again " "later." @@ -2212,29 +2359,30 @@ msgstr "" "Omslag kan niet worden gedownload, omdat de server bezig is. Probeer het " "later nog eens." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:76 msgid " not found." msgstr " niet gevonden." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:79 msgid "LibraryThing.com server error. Try again later." msgstr "LibraryThing.com server fout. Probeer het later nog eens." -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:71 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:86 msgid "" "\n" "%prog [options] ISBN\n" "\n" -"Fetch a cover image for the book identified by ISBN from LibraryThing.com\n" +"Fetch a cover image/social metadata for the book identified by ISBN from " +"LibraryThing.com\n" msgstr "" "\n" -"%prog [opties] ISBN\n" +"%prog [options] ISBN\n" "\n" -"Download een omslag afbeelding voor het boek geidentificeerd door ISBN via " -"LibraryThing.com\n" +"Haal een boek afbeelding / sociale metagegevens (labels, waarderingen, etc) " +"voor het boek aangeduid met ISBN van LibraryThing.com\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1103 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1372 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1226 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1398 msgid "Cover" msgstr "Omslag" @@ -2277,74 +2425,74 @@ msgstr "Alle artikelen" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "Dit is een Amazon Topaz boek. Het kan niet worden verwerkt." -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1373 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1399 msgid "Title Page" msgstr "Titelpagina" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1400 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194 msgid "Table of Contents" msgstr "Inhoudsopgave" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1375 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1401 msgid "Index" msgstr "Index" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1376 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1402 msgid "Glossary" msgstr "Verklarende woordenlijst" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1377 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1403 msgid "Acknowledgements" msgstr "Erkenning" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1378 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1404 msgid "Bibliography" msgstr "Bibliografie" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1379 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1405 msgid "Colophon" msgstr "Colofon" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1380 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1406 msgid "Copyright" msgstr "Auteursrecht" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1381 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1407 msgid "Dedication" msgstr "Opgedragen aan" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1382 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1408 msgid "Epigraph" msgstr "Epigraaf" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1383 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1409 msgid "Foreword" msgstr "Voorwoord" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1384 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1410 msgid "List of Illustrations" msgstr "Lijst met afbeeldingen" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1385 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1411 msgid "List of Tables" msgstr "Lijst met tabellen" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1386 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1412 msgid "Notes" msgstr "Aantekeningen" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1387 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1413 msgid "Preface" msgstr "Voorwoord" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1388 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1414 msgid "Main Text" msgstr "Hoofd Tekst" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:39 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:41 msgid "%s format books are not supported" msgstr "%s formaat boeken worden niet ondersteund" @@ -2362,10 +2510,6 @@ msgid "" msgstr "" "Kon geen redelijk punt vinden om te spiltsen: %s Sub-tree grootte: %d KB" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 -msgid "Unnamed" -msgstr "Naamloos" - #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:32 msgid "OPF/NCX/etc. generation options." msgstr "OPF/NCX/etc. generatie opties." @@ -2391,7 +2535,7 @@ msgstr "Zijpaneel" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:22 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:23 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:23 msgid "" "Normally calibre treats blank lines as paragraph markers. With this option " "it will assume that every line represents a paragraph instead." @@ -2401,7 +2545,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:26 #: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:27 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:27 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+ " @@ -2566,6 +2710,8 @@ msgstr "" "Informatie over een PDF bestand.\n" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 msgid "Author" msgstr "Auteur" @@ -2599,7 +2745,7 @@ msgid "" msgstr "" "[opties] bestand1.pdf bestand2.pdf ...\n" "\n" -"Metadata van het eerste PDF bestand zal worden gebruikt.\n" +"Metagegevens van het eerste PDF bestand zullen worden gebruikt.\n" "\n" "Combineer individuele PDFs.\n" @@ -2665,7 +2811,7 @@ msgstr "" msgid "Split Options:" msgstr "Splits Opties:" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:59 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:31 msgid "" "The unit of measure. Default is inch. Choices are %s Note: This does not " "override the unit for margins!" @@ -2673,7 +2819,7 @@ msgstr "" "De meeteenheid. Standaard is inch (2.54 cm). Keuzes zijn %s Note: Dit neemt " "geen voorrang over de kantlijn eenheden!" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:64 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:36 msgid "" "The size of the paper. This size will be overridden when an output profile " "is used. Default is letter. Choices are %s" @@ -2681,7 +2827,7 @@ msgstr "" "Papier grootte. Deze zal vervallen indien een uitvoer profiel wordt " "gebruikt. Standaard is Letter. Keuzes zijn %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:68 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:40 msgid "" "Custom size of the document. Use the form widthxheight EG. `123x321` to " "specify the width and height. This overrides any specified paper-size." @@ -2690,11 +2836,19 @@ msgstr "" "bijvoorbeels `123x321` om de breedte en hoogte te specificeren. Dit neemt " "voorrang over een gespecificeerd papier formaat." -#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:73 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:45 msgid "The orientation of the page. Default is portrait. Choices are %s" msgstr "" "De orientatie van de pagina. Standaard is Portrait (Staand). Keuzes zijn %s" +#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:49 +msgid "" +"Preserve the aspect ratio of the cover, instead of stretching it to fill the " +"ull first page of the generated pdf." +msgstr "" +"Bewaar de originele beeldverhouding van de boekomslag, in plaats van hem " +"beeldvullend op te rekken op de eerste bladzijde van de aangemaakte pdf." + #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/pdftohtml.py:55 msgid "Could not find pdftohtml, check it is in your PATH" msgstr "" @@ -2733,7 +2887,15 @@ msgstr "" "1 is de minste compressie maar het snelst, 10 de hoogste compressie maar het " "langzaamst." -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:32 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:33 +msgid "" +"Normally extra spaces are condensed into a single space. With this option " +"all spaces will be displayed." +msgstr "" +"Normaal worden alle spaties door een enkele spatie vervangen. Met deze optie " +"zullen alle spaties zichtbaar gemaakt worden." + +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:36 msgid "" "Run the text input through the markdown pre-processor. To learn more about " "markdown see" @@ -2741,7 +2903,7 @@ msgstr "" "Voer de text invoer door de markdown pre-processor. Om meer over de markdown " "te leren, zie" -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:35 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:39 msgid "Do not insert a Table of Contents into the output text." msgstr "Voeg geen inhoudsopgave toe aan de uitvoer tekst." @@ -2786,81 +2948,81 @@ msgstr "" "staat ook toe een maximale regel lengthe te gebruiken die onder de minimum " "waarde ligt." -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:33 msgid "Send file to storage card instead of main memory by default" msgstr "" "Stuur bestand standaard naar de externe opslag ruimte in plaats van het " "hoofd geheugen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:35 msgid "Confirm before deleting" msgstr "Bevestig alvorens verwijdering" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:37 msgid "Toolbar icon size" msgstr "werkbalk ikoon grootte" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:39 msgid "Show button labels in the toolbar" msgstr "Laat labels zien in de werkbalk" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:41 msgid "Main window geometry" msgstr "Hoofdscherm geometrie" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:43 msgid "Notify when a new version is available" msgstr "Laat weten wanneer er een nieuwe versie is" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:45 msgid "Use Roman numerals for series number" msgstr "Gebruik Romeinse nummers voor serie nummers" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:45 -msgid "Sort tags list by popularity" -msgstr "Sorteer tag lijst by populariteit" - #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:47 +msgid "Sort tags list by name, popularity, or rating" +msgstr "Sorteer de lijst met labels op naam, populariteit of waardering" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 msgid "Number of covers to show in the cover browsing mode" msgstr "Aantal boek covers te laten zien in cover browsing modus" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:51 msgid "Defaults for conversion to LRF" msgstr "Standaarden voor conversie naar LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:53 msgid "Options for the LRF ebook viewer" msgstr "Opties voor de LRF eboek viewer" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:56 msgid "Formats that are viewed using the internal viewer" msgstr "Formaten die worden bekeken met de interne viewer" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:58 msgid "Columns to be displayed in the book list" msgstr "Kolommen zichtbaar in de boeken lijst" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:59 msgid "Automatically launch content server on application startup" msgstr "Start content server automatisch bij applicatie start" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:60 msgid "Oldest news kept in database" msgstr "Bewaar oudste nieuws in database" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:61 msgid "Show system tray icon" msgstr "Systeemvakpictogram tonen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 msgid "Upload downloaded news to device" msgstr "Upload gedownload nieuws naar apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 msgid "Delete books from library after uploading to device" msgstr "Verwijder boeken van bibliotheek na uploaden naar apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 msgid "" "Show the cover flow in a separate window instead of in the main calibre " "window" @@ -2868,88 +3030,512 @@ msgstr "" "Laat de omslag afbeelding in een apart window zien in plaats van calibre's " "hoofdscherm" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 msgid "Disable notifications from the system tray icon" msgstr "Schakel notificaties in systeem tray uit" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71 msgid "Default action to perform when send to device button is clicked" msgstr "" "Standaard actie te ondernemen wanneer zend naar apparaat knop is aangeklikt" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 msgid "Maximum number of waiting worker processes" msgstr "Maximum aantal wachtende werk processen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93 -msgid "Download social metadata (tags/rating/etc.)" -msgstr "Download sociale metadata (tags/waarderingen/etc.)" - #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95 -msgid "Overwrite author and title with new metadata" -msgstr "Overschrijf auteur en titel met nieuwe metadata" +msgid "Download social metadata (tags/rating/etc.)" +msgstr "Download sociale metagegevens (labels, waarderingen, etc)" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97 +msgid "Overwrite author and title with new metadata" +msgstr "Overschrijf auteur en titel met nieuwe metagegevens" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99 msgid "Limit max simultaneous jobs to number of CPUs" msgstr "" "Limiteer maximum aantal tegelijktijdige processen tot het aantal CPU's" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:475 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101 +msgid "tag browser categories not to display" +msgstr "markeer de browser catagorieen de verborgen moeten blijven" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103 +msgid "The layout of the user interface" +msgstr "De indeling van de gebruikers interface" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105 +msgid "Show the average rating per item indication in the tag browser" +msgstr "" +"Laat de gemiddelde waardering per item in de catagorieen browser zien" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107 +msgid "Disable UI animations" +msgstr "Blokkeer GI animaties" + +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:476 msgid "Copied" msgstr "Gekopieerd" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy" msgstr "Kopieer" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "Copy to Clipboard" msgstr "Kopieer naar het Klembord" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:399 msgid "Choose Files" msgstr "Kies bestanden" +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:245 +msgid "Use library only" +msgstr "Gebruik alleen de bibliotheek" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:246 +msgid "User annotations generated from main library only" +msgstr "" +"Annotaties van de gebruiker alleen gegenereerd in de hoofdbibliotheek" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:671 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:729 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1060 +msgid "No books selected" +msgstr "Geen boeken geselecteerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:76 +msgid "No books selected to fetch annotations from" +msgstr "" +"Er zijn geen boeken geselecteerd waarvan annotaties kunnen worden opgehaald" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:101 +msgid "Merging user annotations into database" +msgstr "Voeg annotaties van gebruikers samen in een database" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:129 +msgid "%s
      Last Page Read: %d (%d%%)" +msgstr "%s
      Laatste gelezen pagina: %d (%d%%)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:135 +msgid "%s
      Last Page Read: Location %d (%d%%)" +msgstr "%s
      Laatste gelezen pagina: Locatie %d (%d%%)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:154 +msgid "Location %d • %s
      %s
      " +msgstr "Locatie %d • %s
      %s
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:163 +msgid "Page %d • %s
      " +msgstr "Pagina %d • %s
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:168 +msgid "Location %d • %s
      " +msgstr "Locatie %d • %s
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:291 +msgid "How many empty books?" +msgstr "Hoeveel lege boeken?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:292 +msgid "How many empty books should be added?" +msgstr "Hoeveel lege boeken moeten worden toegevoegd?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:391 +msgid "Uploading books to device." +msgstr "Boeken worden geupload naar de lezer." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 +msgid "Books" +msgstr "Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:352 +msgid "EPUB Books" +msgstr "EPUB Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:353 +msgid "LRF Books" +msgstr "LRF Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:354 +msgid "HTML Books" +msgstr "HTML Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:355 +msgid "LIT Books" +msgstr "LIT Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:356 +msgid "MOBI Books" +msgstr "MOBI Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:357 +msgid "Topaz books" +msgstr "Topaz boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:358 +msgid "Text books" +msgstr "Text boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:359 +msgid "PDF Books" +msgstr "PDF Boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:360 +msgid "Comics" +msgstr "Stripverhalen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:361 +msgid "Archives" +msgstr "Archief" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:365 +msgid "Supported books" +msgstr "Ondersteunde boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:400 +msgid "Merged some books" +msgstr "Enkele boeken zijn samengevoegd" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:401 +msgid "" +"Some duplicates were found and merged into the following existing books:" +msgstr "" +"Er zijn duplicaten gevonden en samengevoegd met de volgende bestande boeken:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:410 +msgid "Failed to read metadata" +msgstr "De metagegevens konden niet gelezen worden" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:411 +msgid "Failed to read metadata from the following" +msgstr "Metagegevens konden niet worden gelezen van de volgende" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "Add to library" +msgstr "Aan collectie toevoegen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1229 +msgid "No book selected" +msgstr "Geen boek geselecteerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:435 +msgid "No book files found" +msgstr "Geen boek bestanden gevonden" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:457 +msgid "Cannot delete" +msgstr "Kan niet verwijderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:470 +msgid "Choose formats to be deleted" +msgstr "Kies formaten om te verwijderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:488 +msgid "Choose formats not to be deleted" +msgstr "Kies formaten die niet moeten worden verwijderd" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:508 +msgid "Cannot delete books" +msgstr "Kan boeken niet verwijderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:509 +msgid "No device is connected" +msgstr "Geen apparaat gevonden" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:519 +msgid "Main memory" +msgstr "|Hoofdgeheugen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:444 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:453 +msgid "Storage Card A" +msgstr "Geheugenkaart A" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:455 +msgid "Storage Card B" +msgstr "Geheugenkaart B" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:526 +msgid "No books to delete" +msgstr "Er zijn geen boeken om te verwijderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:527 +msgid "None of the selected books are on the device" +msgstr "Geen van de geselecteerde boeken bevindt zich op het apparaat" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:601 +msgid "Deleting books from device." +msgstr "Boeken worden verwijderd van de lezer." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:565 +msgid "" +"The selected books will be permanently deleted and the files removed " +"from your computer. Are you sure?" +msgstr "" +"De geselecteerde boeken zullen permanent worden verwijderd en de " +"bestanden gewist van de computer. Weet je dit zeker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:586 +msgid "" +"The selected books will be permanently deleted from your device. Are " +"you sure?" +msgstr "" +"De geselecteerde boeken zullen definitief verwijderd worden van uw " +"apparaat. Weet u het zeker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:611 +msgid "Cannot download metadata" +msgstr "Metagegevens konden niet worden gedownload" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:627 +msgid "social metadata" +msgstr "sociale metagegevens (labels, waarderingen, etc)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "covers" +msgstr "Omslag afbeeldingen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:629 +msgid "metadata" +msgstr "metagegevens" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:631 +msgid "Downloading %s for %d book(s)" +msgstr "Downloaden van %s voor %d boek(en)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:655 +msgid "Failed to download some metadata" +msgstr "Sommige metagegevens konden niet worden gedownload" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:656 +msgid "Failed to download metadata for the following:" +msgstr "Metagegevens konden niet worden gedownload voor de volgende:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:659 +msgid "Failed to download metadata:" +msgstr "Metagegevens konden niet worden gedownload:" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:949 +#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 +msgid "Error" +msgstr "Fout" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:707 +msgid "Cannot edit metadata" +msgstr "Metagegevens kunnen niet bewerkt worden" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:731 +msgid "Cannot merge books" +msgstr "Kan boeken niet samenvoegen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:732 +msgid "At least two books must be selected for merging" +msgstr "" +"Er moeten tenminste twee boeken worden geselecteerd om samen te voegen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:736 +msgid "" +"All book formats and metadata from the selected books will be added to the " +"first selected book.

      The second and subsequently selected " +"books will not be deleted or changed.

      Please confirm you want to " +"proceed." +msgstr "" +"Alle boek formaten en metagegevens van de geselecteerde boeken zullen worden " +"toegevoegd aan het eerste geselecteerde boek.
      Het tweede en de " +"verder geselecteerde boeken zullen niet verwijderd of veranderd worden. " +"

      Bevestig dat u hiermee wilt doorgaan." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:747 +msgid "" +"All book formats and metadata from the selected books will be merged into " +"the first selected book.

      After merger the second and " +"subsequently selected books will be deleted.

      All book formats " +"of the first selected book will be kept and any duplicate formats in the " +"second and subsequently selected books will be permanently deleted " +"from your computer.

      Are you sure you want to proceed?" +msgstr "" +"Alle boek formaten en metagegevens van de geselecteerde boeken zullen worden " +"toegevoegd aan het eerste geselecteerde boek.
      Na het " +"samenvoegen zullen het tweede t/m het laatste geselecteerde boek worden " +"verwijderd.Alle boek formaten van het eerste geselecteerde boek zullen " +"bewaard blijven en alle duplicaat formaten, van het tweede en de " +"verder geselecteerde boeken zullen permanent worden verwijderd van " +"uw computer.

      Weet u zeker dat u hiermee wilt doorgaan?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:759 +msgid "" +"You are about to merge more than 5 books. Are you sure you want to " +"proceed?" +msgstr "" +"Je staat op het punt meer dan 5 boeken samen te voegen. Weet je zeker " +"dat je dat wilt doen?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:876 +msgid "Cannot save to disk" +msgstr "Kan niet naar schijf worden opgeslagen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:879 +msgid "Choose destination directory" +msgstr "Kies een bestemmingsmap" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:912 +msgid "Error while saving" +msgstr "Fout tijdens opslaan" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:913 +msgid "There was an error while saving." +msgstr "Er is een fout opgetreden tijdens het opslaan." + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:921 +msgid "Could not save some books" +msgstr "Sommige boeken konden niet worden opgeslagen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:922 +msgid "Click the show details button to see which ones." +msgstr "Klik de 'laat details zien' knop om te zien welke" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:943 +msgid "No books selected to generate catalog for" +msgstr "Geen boeken geselecteerd voor catalogus" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:960 +msgid "Generating %s catalog..." +msgstr "Genereren %s catalogus" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:264 +msgid "No books found" +msgstr "Geen boeken gevonden" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:966 +msgid "" +"No books to catalog\n" +"Check exclude tags" +msgstr "" +"Geen boeken te catalogiseren\n" +"Check uitsluitingstags" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:976 +msgid "Catalog generated." +msgstr "Catalogus aangemaakt" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:979 +msgid "Export Catalog Directory" +msgstr "Exporteer Catalogus Folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:980 +msgid "Select destination for %s.%s" +msgstr "Selecteer uitvoer voor %s.%s" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:996 +msgid "Fetching news from " +msgstr "Downloading nieuws van " + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1010 +msgid " fetched." +msgstr " opgehaald" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1059 +msgid "Cannot convert" +msgstr "Kan niet converteren" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1088 +msgid "Starting conversion of %d book(s)" +msgstr "Start conversie van %d boek(en)" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1204 +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1265 +msgid "Cannot view" +msgstr "Kan niet bekijken" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1210 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 +msgid "Choose the format to view" +msgstr "Kies het te bekijken formaat" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1218 +msgid "Multiple Books Selected" +msgstr "Meerdere Boeken Geselecteerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1219 +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 "" +"Je probeert %d boeken te openen. Te veel boeken tegelijkertijd openen kan " +"veel tijd in belsag nemen, een een negatief effect op de responsiviteit van " +"je computer. Eenmaal gestart kan dit proces niet worden afgebroken totdat " +"het klaar is. Wil je verder gaan?" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1228 +msgid "Cannot open folder" +msgstr "Kan folder niet openen" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions.py:1266 +msgid "%s has no available formats." +msgstr "%s heeft geen beschikbare formaten" + #: /home/kovid/work/calibre/src/calibre/gui2/add.py:54 msgid "Searching in" msgstr "Zoek in" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:232 msgid "Adding..." msgstr "Toevoegen..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245 msgid "Searching in all sub-directories..." msgstr "Zoeken in alle subfolders..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 msgid "Path error" msgstr "Pad fout" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:252 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:259 msgid "The specified directory could not be processed." msgstr "De geselecteerde folder kan niet worden bewerkt." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:256 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845 msgid "No books" msgstr "Geen boeken" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:257 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1822 -msgid "No books found" -msgstr "Geen boeken gevonden" - -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:330 msgid "Added" msgstr "Toegevoegd" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:343 msgid "Adding failed" msgstr "Toevoegen mislukt" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:344 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." @@ -2958,11 +3544,11 @@ msgstr "" "opnieuw op te starten, en voeg daarna boeken toe in kleinere aantallen " "totdat je het probleem boek hebt gevonden." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:356 msgid "Duplicates found!" msgstr "Duplicaten gevonden!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:357 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -2970,18 +3556,227 @@ msgstr "" "Boeken met dezelfde titel als de volgende bestaan al in de database. " "Nogmaals toevoegen?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:360 msgid "Adding duplicates..." msgstr "Toevoegen duplicaten..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:419 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:427 msgid "Saving..." msgstr "Opslaan..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:472 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:480 msgid "Saved" msgstr "Opgeslagen" +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:57 +msgid "Searching for sub-folders" +msgstr "Zoeken naar sub-folders" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:62 +msgid "Searching for books" +msgstr "Zoeken naar boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:74 +msgid "Looking for duplicates based on file hash" +msgstr "Zoeken naar dubbele bestanden gebaseerd op file hash" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:65 +msgid "Choose root folder" +msgstr "Kies de hoofd folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:137 +msgid "Invalid root folder" +msgstr "Foute hoofd folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:138 +msgid "is not a valid root folder" +msgstr "is geen goede start folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:148 +msgid "Add books to calibre" +msgstr "Voeg boeken toe aan Calibre" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:21 +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:57 +#: /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:49 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 +msgid "WizardPage" +msgstr "Wizardpagina" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:22 +msgid "Scanning root folder for books" +msgstr "Bezig met het zoeken naar boeken in de start folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:23 +msgid "This may take a few minutes" +msgstr "Dit kan enkele minuten duren" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:58 +msgid "Choose the location to add books from" +msgstr "Kies de plek van de toe te voegen boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:59 +msgid "Select a folder on your hard disk" +msgstr "Selecteer een folder op uw harde schijf" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:60 +msgid "" +"

      calibre can scan your computer for existing books automatically. These " +"books will then be copied into the calibre library. This wizard will " +"help you customize the scanning and import process for your existing book " +"collection.

      \n" +"

      Choose a root folder. Books will be searched for only inside this folder " +"and any sub-folders.

      \n" +"

      Make sure that the folder you chose for your calibre library is " +"not under the root folder you choose.

      " +msgstr "" +"

      calibre kan automatisch uw computer op bestaande boeken doorzoeken. Deze " +"boeken zullen dan aan de calibre colllectie toegevoegd (=gekopieerd) " +"worden. Deze wizard zal u helpen bij het scannen, aanpassen en importeren " +"van uw bestaande collectie boeken.

      \n" +"

      Kies een start folder. Er zal alleen in deze en onderliggende folders " +"naar boeken gezocht worden.

      \n" +"

      Verzeker u ervan dat de folder waar calibre uw collectie bewaard zich " +"niet in dit pad bevind.

      " + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:63 +msgid "&Root folder:" +msgstr "&Start folder:" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:64 +msgid "" +"This folder and its sub-folders will be scanned for books to import into " +"calibre's library" +msgstr "" +"Deze map en de sub-mappen worden gescand op te importeren boeken voor " +"calibre's library" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:66 +#: /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/look_and_feel_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:633 +#: /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:371 +#: /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:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:166 +#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:77 +#: /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:254 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:265 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 +msgid "..." +msgstr "..." + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:67 +msgid "Handle multiple files per book" +msgstr "Behandel meerdere bestanden per boek" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:68 +msgid "" +"&One book per folder, assumes every ebook file in a folder is the same book " +"in a different format" +msgstr "" +"&Een boek per folder, neem aan dat elk eboek bestand in een folder hetzelfde " +"boek in een ander formaat is" + +#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:69 +msgid "" +"&Multiple books per folder, assumes every ebook file is a different book" +msgstr "" +"&Meerdere boeken per folder, neem aan dat elk eboek bestand een ander boek is" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:23 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1059 +msgid "Path" +msgstr "Pad" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:24 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:312 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:96 +msgid "Formats" +msgstr "Formaten" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:25 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1062 +msgid "Collections" +msgstr "Collecties" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:56 +msgid "Click to open" +msgstr "Klik om te openen" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:48 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:458 +msgid "None" +msgstr "Geen" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:310 +msgid "Click to open Book Details window" +msgstr "Klik om het Boek detail venster te openen" + #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml.py:16 msgid "CSV/XML Options" msgstr "CSV/XML Opties" @@ -3027,21 +3822,21 @@ msgstr "uitvoer" #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:38 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:42 #: /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:62 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:67 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/save_template_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106 @@ -3058,9 +3853,9 @@ msgid "E-book options" msgstr "E-Boek opties" #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:20 -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:958 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:976 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:222 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1467 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1485 msgid "Catalog" msgstr "Catalogus" @@ -3238,46 +4033,6 @@ msgstr "" "kan handig zijn om het conversie proces te begrijpen, en correcte waarden te " "achterhalen voor de inhoudsopgave en hoofdstuk informatie." -#: /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/look_and_feel_ui.py:125 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:52 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:507 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:521 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:522 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:538 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 -#: /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:364 -#: /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:389 -#: /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:393 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:400 -#: /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 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135 -#: /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:365 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:377 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:379 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:381 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:75 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:186 -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 " @@ -3306,7 +4061,7 @@ msgstr "Geen &SVG omslag" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:52 msgid "Preserve cover &aspect ratio" -msgstr "" +msgstr "Bewaar de omslaghoes beeldverhouding" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:53 msgid "Split files &larger than:" @@ -3428,15 +4183,15 @@ msgstr "Beheers de visualisatie van de uitvoer" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:30 msgid "Original" -msgstr "" +msgstr "Origineel" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:31 msgid "Left align" -msgstr "" +msgstr "Links uitlijnen" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:32 msgid "Justify text" -msgstr "" +msgstr "Tekst uitvullen" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:120 msgid "&Disable font size rescaling" @@ -3494,7 +4249,7 @@ msgstr "Extra CSS" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:136 msgid "&Transliterate unicode characters to ASCII" -msgstr "" +msgstr "&Translitereer Unicode-tekens naar ASCII" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137 msgid "Insert &blank line" @@ -3502,7 +4257,7 @@ msgstr "Voeg lege regel toe" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:138 msgid "Keep &ligatures" -msgstr "" +msgstr "Bewaar &ligaturen" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:19 msgid "LRF Output" @@ -3560,87 +4315,87 @@ msgstr "Proportioneel lettertype:" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:195 msgid "Metadata" -msgstr "Metadata" +msgstr "Metagegevens" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:43 msgid "" "Set the metadata. The output file will contain as much of this metadata as " "possible." msgstr "" -"Stel de metadata in. Het uitvoer bestand zal zoveel metadata bevatten als " -"mogelijk is." +"Stel de metagegevens in. Het uitvoer bestand zal zoveel metagegevens " +"bevatten als mogelijk is." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:164 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "Kies cover voor " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "Kan niet lezen" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:172 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "Fout bij het lezen van bestand" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 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:185 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr " is geen geldige afbeelding" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:402 msgid "Book Cover" msgstr "Boek Omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -msgid "Use cover from &source file" -msgstr "Gebruik omslag van &bron bestand" - #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /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:403 msgid "Change &cover image:" msgstr "Verander &Omslag Afbeelding" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 -#: /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:404 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:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +msgid "Use cover from &source file" +msgstr "Gebruik omslag van &bron bestand" + +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 msgid "&Title: " msgstr "&Titel: " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 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:174 -#: /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:360 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:158 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "&Author(s): " msgstr "&Auteur(s) " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 msgid "Author So&rt:" msgstr "Auteur So&rteer" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 msgid "" "Change the author(s) of this book. Multiple authors should be separated by a " "comma" @@ -3648,20 +4403,20 @@ msgstr "" "Verander de auteur(s) van dit boek. Meerdere auteurs moeten met een komma " "van elkaar worden gescheiden." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /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:369 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "&Publisher: " msgstr "&Uitgeverij " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Ta&gs: " msgstr "Ta&gs " -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:154 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

      They can be any words or phrases, separated by commas." @@ -3670,23 +4425,23 @@ msgstr "" "zoeken.

      Ze kunnen woorden of zinsdelen bevatten, gescheiden door " "komma's." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:180 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Series:" msgstr "&Series:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:161 -#: /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 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:176 +#: /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 "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:183 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 msgid "Book " msgstr "Boek " @@ -3771,12 +4526,12 @@ msgid "PDB Input" msgstr "PDB Invoer" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 msgid "Treat each &line as a paragraph" msgstr "Behandel iedere regel als een paragraaf" #: /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:44 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:48 msgid "Assume print formatting" msgstr "Neem print formatering aan" @@ -3804,32 +4559,31 @@ msgstr "Geen &Afbeeldingen" msgid "PDF Output" msgstr "PDf Uitvoer" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:40 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:43 msgid "&Paper Size:" msgstr "&Papier Grootte:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:44 msgid "&Orientation:" msgstr "&Orientatie:" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:45 +msgid "Preserve &aspect ratio of cover" +msgstr "Behoud Omslag &Beeldverhouding" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output.py:14 msgid "RB Output" msgstr "RB Uitvoer" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:75 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2067 -msgid "Choose the format to view" -msgstr "Kies het te bekijken formaat" - -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "Cannot build regex using the GUI builder without a book." msgstr "Kan geen reguliere expressie maken met de Regex Maker zonder boek." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "No formats available" msgstr "Gene formaten beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:97 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:100 msgid "Open book" msgstr "Open boek" @@ -3904,12 +4658,12 @@ msgid "Footer regular expression:" msgstr "Voetnoot reguliere expressie:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:77 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:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:78 msgid "Invalid regular expression: %s" msgstr "Ongeldige reguliere expressie: %s" @@ -3933,7 +4687,7 @@ msgstr "Verwijder eerste &afbeelding" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:62 msgid "Insert &metadata as page at start of book" -msgstr "Voer &metadata toe als pagina aan het begin van het boek" +msgstr "Voeg &metagegevens toe als eerste pagina in het boek" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:63 msgid "&Preprocess input file to possibly improve structure detection" @@ -3993,11 +4747,11 @@ msgstr "Inhoudsopgave &Filter:" msgid "TXT Input" msgstr "TXT Invoer" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:49 msgid "Process using markdown" msgstr "Proces gebruikt markdown" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:50 msgid "" "

      Markdown is a simple markup language for text files, that allows for " "advanced formatting. To learn more visit markdown om hier " "meer over te leren." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:51 msgid "Do not insert Table of Contents into output text when using markdown" msgstr "" "Voeg geen inhoudsopgave toe aan de uitvoer tekst wanneer een markdown word " "gebruikt" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:52 +msgid "Preserve &spaces" +msgstr "Behoud &spaties" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:16 msgid "TXT Output" msgstr "TXT Uitvoer" @@ -4126,205 +4884,318 @@ msgstr "" "href=\"http://calibre-ebook.com/user_manual/xpath.html\">XPath " "Handleiding." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:38 +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:119 +msgid "Cover browser could not be loaded" +msgstr "Kan de omslag browser niet laden" + +#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:171 +msgid "Browse by covers" +msgstr "Zoek op omslag afbeelding" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:77 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:242 +msgid "Undefined" +msgstr "Niet gedefiniëerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:133 +msgid "Yes" +msgstr "Ja" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:134 +msgid "No" +msgstr "Nee" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:115 +msgid "star(s)" +msgstr "sterren" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:116 +msgid "Unrated" +msgstr "Niet gewaardeerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:249 +msgid " index:" +msgstr " index:" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:183 +msgid "Automatically number books in this series" +msgstr "Nummer de boeken in deze serie automatisch" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:475 +msgid "Remove all tags" +msgstr "Verwijder alle labels" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:496 +msgid "tags to add" +msgstr "toe te voegen labels" + +#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:501 +msgid "tags to remove" +msgstr "te verwijderen labels" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:48 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:135 msgid "No details available." msgstr "Geen details beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:154 msgid "Device no longer connected." msgstr "Apparaat niet meer verbonden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "Get device information" msgstr "Lees apparaat informatie" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:281 msgid "Get list of books on device" msgstr "Lees boeken lijst van apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291 msgid "Get annotations from device" msgstr "Haal annotaties uit apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:300 msgid "Send metadata to device" -msgstr "Verstuur metadata naar apparaat" +msgstr "Verstuur metagegevens naar apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305 +msgid "Send collections to device" +msgstr "Stuur de collectie(s) naar apparaat" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 msgid "Upload %d books to device" msgstr "Upload %d boeken naar apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 msgid "Delete books from device" msgstr "Verwijder boeken van apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:361 msgid "Download books from device" msgstr "Download boeken van apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:371 msgid "View book on device" msgstr "Bekijk book op apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:296 -msgid "and delete from library" -msgstr "en verwijder uit bibliotheek" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:407 msgid "Set default send to device action" msgstr "Stel standaard stuur naar apparaat actie in" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:324 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:331 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:333 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:413 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:420 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:422 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 msgid "Email to" msgstr "Email naar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:424 +msgid " and delete from library" +msgstr " en verwijder ze uit de bibliotheek" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:433 msgid "Send to main memory" msgstr "Stuur naar hoofdgeheugen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:435 msgid "Send to storage card A" msgstr "Zend naar opslag kaart A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:350 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:437 msgid "Send to storage card B" msgstr "Zend naar opslag kaart B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:360 -msgid "Send specific format to main memory" -msgstr "Zend specifiek formaat naar hoofdgeheugen" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451 +msgid "Main Memory" +msgstr "Hoofdgeheugen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:362 -msgid "Send specific format to storage card A" -msgstr "Zend specifiek formaat naar opslag kaart A" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:469 +msgid "Send and delete from library" +msgstr "Verzend en verwijder uit de bibliotheek" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:364 -msgid "Send specific format to storage card B" -msgstr "Zend specifiek formaat naar opslag kaart B" +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470 +msgid "Send specific format" +msgstr "Verzend specifiek formaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 +msgid "Connect to folder" +msgstr "Verbind met folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:515 +msgid "Connect to iTunes" +msgstr "Verbind met iTunes" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:520 +msgid "Eject device" +msgstr "Verbreek apparaat verbinding" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:528 msgid "Fetch annotations (experimental)" msgstr "Haal annoties op (experimenteel)" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:638 +msgid "Error communicating with device" +msgstr "Fout bij communicatie met lezer" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:659 +msgid "Select folder to open as device" +msgstr "Selecteer de \"als apparaat\" te openen map" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:704 +msgid "Failed" +msgstr "Mislukt" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:710 +msgid "Error talking to device" +msgstr "Fout bij communicatie met lezer" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:711 +msgid "" +"There was a temporary error talking to the device. Please unplug and " +"reconnect the device and or reboot." +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/device.py:753 +msgid "Device: " +msgstr "Apparaat: " + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:755 +msgid " detected." +msgstr " gedetecteerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:778 +msgid "Connected " +msgstr "Verbonden " + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846 msgid "selected to send" msgstr "Geselecteerd om te versturen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:851 msgid "Choose format to send to device" msgstr "Kies formaat om naar apparaat te versturen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:860 msgid "No device" msgstr "Geen apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861 msgid "Cannot send: No device is connected" msgstr "Kan niet zenden: geen apparaat beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:534 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868 msgid "No card" msgstr "Geen kaart aanwezig" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:535 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869 msgid "Cannot send: Device has no storage card" msgstr "Kan niet versturen: Apparaat heeft geen opslag kaart" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:910 msgid "E-book:" msgstr "E-Boek:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:913 msgid "Attached, you will find the e-book" msgstr "Aangesloten, je zult het e-boek vinden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:585 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:914 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:181 msgid "by" msgstr "door" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:915 msgid "in the %s format." msgstr "in het %s formaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:928 msgid "Sending email to" msgstr "Versturen van email naar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:629 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:636 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:788 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:904 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:911 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:958 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:965 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1057 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1118 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1236 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243 msgid "No suitable formats" msgstr "Geen geschikte formaten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:959 msgid "Auto convert the following books before sending via email?" msgstr "" "Auto-converteer de volgende boeken alvorens ze via email te versturen?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:637 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:966 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "De voilgende boeken konden niet worden ge-emailed omdat geen beschikbare " "formaten zijn gevonden:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:655 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:984 msgid "Failed to email books" msgstr "Boeken konden niet worden ge-emailed." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:985 msgid "Failed to email the following books:" msgstr "De volgende boeken konden niet worden ge-emailed:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:989 msgid "Sent by email:" msgstr "Verstuurd via email:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:687 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1016 msgid "News:" msgstr "Nieuws:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:688 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1017 msgid "Attached is the" msgstr "Bijgevoegd is de" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:699 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028 msgid "Sent news to" msgstr "Nieuws verzonden naar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:729 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:789 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:905 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1237 msgid "Auto convert the following books before uploading to the device?" msgstr "" "Auto-converteer de volgende boeken alvorens ze te uploaden naar het appraat?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:758 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1087 msgid "Sending catalogs to device." msgstr "Verstuur catalogus naar apparaat." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:819 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150 msgid "Sending news to device." msgstr "Versturen van nieuws naar apparaat." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1203 msgid "Sending books to device." msgstr "Boeken worden naar de lezer verzonden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244 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." @@ -4333,49 +5204,33 @@ msgstr "" "er geen geschikte bestandsformaten konden worden gevonden. Converteer " "boek(en) eerst naar een formaat dat word ondersteund door je lezer." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:960 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1305 msgid "No space on device" msgstr "Geen schijfruimte op de lezer." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:961 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1306 msgid "" "

      Cannot upload books to device there is no more free space available " msgstr "" "

      De boeken kunnen niet worden geupload naar de lezer, omdat er onvoldoende " "schijfruimte beschikbaar is " -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78 msgid "Select available formats and their order for this device" msgstr "Selecteer beschikbare formaten en hun ranglijst voor dit apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:79 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:82 msgid "Use sub directories" msgstr "Gebruik sub-folders" -#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:81 +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83 +msgid "Use author sort for author" +msgstr "Gebruik auteur sortering voor auteur" + +#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85 msgid "Save &template:" msgstr "Bewaar &sjabloon:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:114 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:115 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:116 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:373 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1101 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 -msgid "Path" -msgstr "Pad" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:117 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:118 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:119 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:372 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Formats" -msgstr "Formaten" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:68 msgid "Fit &cover to view" msgstr "Schaal &omslag naar schermgrootte" @@ -4424,11 +5279,11 @@ msgstr "Catalogus opties" msgid "Choose Format" msgstr "Kies Formaat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:33 msgid "Set defaults for conversion of comics (CBR/CBZ files)" msgstr "Zet standaarden voor conversie van comics (CBR/CBZ bestanden)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 msgid "Set options for converting %s" msgstr "Zet opties voor conversie %s" @@ -4444,15 +5299,19 @@ msgstr "&Auteur(s)" msgid "&Profile:" msgstr "&Profiel" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog_ui.py:41 +msgid "Edit Comments" +msgstr "Bewerk Commentaar" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:174 msgid "%(plugin_type)s %(plugins)s" msgstr "%(plugin_type)s %(plugins)s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:175 msgid "plugins" msgstr "plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:184 msgid "" "\n" "Customization: " @@ -4460,33 +5319,33 @@ msgstr "" "\n" "Persoonlijke instellingen: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Conversion" msgstr "Conversie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "General" msgstr "Algemeen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:200 msgid "Interface" msgstr "Interface" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "Add/Save" msgstr "Voeg toe / Bewaar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:201 msgid "" "Email\n" "Delivery" msgstr "Email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Advanced" msgstr "Geavanceerd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "" "Content\n" "Server" @@ -4494,24 +5353,24 @@ msgstr "" "Content\n" "Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:202 msgid "Plugins" msgstr "Plugins" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Auto send" msgstr "Automatisch versturen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:220 msgid "Email" msgstr "Email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:221 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:225 msgid "Formats to email. The first matching format will be sent." msgstr "" "Formaat te emailen. Het eerste formaat dat overeenkomt zal worden verstuurd." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:226 msgid "" "If checked, downloaded news will be automatically mailed
      to this email " "address (provided it is in one of the listed formats)." @@ -4519,150 +5378,179 @@ msgstr "" "Indien gekozen, gedownload nieuws zal automatisch worden geemailed
      \r\n" "naar dit adres (indien het in een van de ondersteunde formaten is)." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:296 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:300 msgid "new email address" msgstr "nieuw email adres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:472 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:490 +msgid "Wide" +msgstr "Breed" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:491 +msgid "Narrow" +msgstr "Smal" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:502 msgid "System port selected" msgstr "Systeempoort geselecteerd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:473 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:503 msgid "" "The value %d you have chosen for the content server port is a system " -"port. You operating system may not allow the server to run on this " +"port. Your operating system may not allow the server to run on this " "port. To be safe choose a port number larger than 1024." msgstr "" -"De waarde %d die je hebt gekozen voor de server van content is een " -"systeempoort. Je besturingssysteem kan het mogelijk niet toestaan de server " -"op deze poort te laten functioneren. Kies om veilig te zijn een poortnummer " -"hoger dan 1024." +"De waarde %d die u hebt gekozen voor de server-poort is een systeem-" +"poort. Uw besturingssysteem kan het gebruik van deze poort blokkeren en " +"voorkomen dat de server op deze poort draait. Het is veiliger te kiezen voor " +"een poortnummer groter dan 1024." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:492 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1538 -#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 -msgid "Error" -msgstr "Fout" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:493 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523 msgid "Failed to install command line tools." msgstr "Kan commando regel commandos niet installeren." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526 msgid "Command line tools installed" msgstr "commando regel tools geinstalleerd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527 msgid "Command line tools installed in" msgstr "Commando regel tools geinstalleerd in" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:528 msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" "Indien je calibre.app verplaats, zullen de commando regel tools opnieuw " "moeten worden geinstalleerd." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:579 msgid "No valid plugin path" msgstr "Geen geldig plugin pad" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:580 msgid "%s is not a valid plugin path" msgstr "%s is geen geldig plugin pad" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583 msgid "Choose plugin" msgstr "Kies plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:595 msgid "Plugin cannot be disabled" msgstr "Plugin kan niet worden uitgeschakeld" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:596 msgid "The plugin: %s cannot be disabled" msgstr "De plugin: %s kan niet worden uitgeschakeld" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:605 msgid "Plugin not customizable" msgstr "Plugin ondersteund geen persoonlijke instellingen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:606 msgid "Plugin: %s does not need customization" msgstr "Plugin %s heeft geen instellingen nodig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:614 msgid "Customize" msgstr "Aanpassen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:652 msgid "Cannot remove builtin plugin" msgstr "Ingebouwde plugin kan niet worden verwijderd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:653 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" " Kan niet worden verwijderd. Het is een ingebouwde plugin. Probeer de plugin " "uit te schakelen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:656 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:684 +msgid "You must select a column to delete it" +msgstr "Om een kolom te verwijderen moet u deze eerst selecteren" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:689 +msgid "The selected column is not a custom column" +msgstr "De geselecteerde kolom is geen \"custom\" kolom" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 +msgid "Are you sure?" +msgstr "Weet je het zeker?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 +msgid "Do you really want to delete column %s and all its data?" +msgstr "Wilt u werkelijk kolom %s en al zijn gegevens verwijderen?" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:758 msgid "Error log:" msgstr "Foutmeldigenlogbestand:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:663 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:765 msgid "Access log:" msgstr "Toeganglog-bestand:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:701 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:793 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:340 msgid "Failed to start content server" msgstr "Content server kon niet worden gestart" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:715 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:817 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:587 msgid "Select location for books" msgstr "Selecteer de locatie voor boeken" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:723 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:824 msgid "Invalid size" msgstr "Ongeldige grootte" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:825 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "De grootte %s is ongeldig. Moet in de vorm BreedtexHoogte zijn" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:778 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:783 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:889 msgid "Invalid database location" msgstr "Foutieve database locatie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:779 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:885 msgid "Invalid database location " msgstr "Foutieve database locatie " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:780 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:886 msgid "
      Must be a directory." msgstr "
      Moet een folder zijn." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:784 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:890 msgid "Invalid database location.
      Cannot write to " msgstr "Foutieve database locatie.
      Kan niet schrijven naar " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:895 +msgid "Must restart" +msgstr "Moet herstarten" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:896 +msgid "" +"The changes you made require that Calibre be restarted. Please restart as " +"soon as practical." +msgstr "" +"De door u aangebrachte wijzigingen vereisen dat Calibre opnieuw opgestart " +"moet worden. Herstart zo spoedig mogelijk." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:930 msgid "Checking database integrity" msgstr "Verifieren database integriteit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:838 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:950 msgid "Failed to check database integrity" msgstr "Database integriteit kon niet worden geverifieerd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:843 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:955 msgid "Some inconsistencies found" msgstr "Inconsistente data gevonden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:844 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:956 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 " @@ -4674,40 +5562,40 @@ msgstr "" "moeten checken. Dit kan gebeuren als je de bestanden in de folders direct " "hebt gemanipuleerd." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 msgid "TabWidget" msgstr "TabWidget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 msgid "" "Here you can control how calibre will read metadata from the files you add " "to it. calibre can either read metadata from the contents of the file, or " "from the filename." msgstr "" -"Hier kun je instellingen hoe calibre metadata zal lezen uit toegevoegde " -"bestanden. Calibre kan of metadata uit de inhoud van het bestand lezen, of " -"uit de bestandsnaam." +"Hier kun je instellen hoe Calibre metagegevens zal lezen uit toe te voegen " +"bestanden. Calibre kan metagegevens uit het bestand lezen, of uit de " +"bestandsnaam samenstellen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 msgid "Read metadata only from &file name" -msgstr "Lees metadata alleen uit &bestandsnaam" +msgstr "Lees metagegevens alleen uit de &bestandsnaam" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 msgid "" "Swap the firstname and lastname of the author. This affects only metadata " "read from file names." msgstr "" "Verwissel de voornaam en achternaam van de auteur. Dit heeft alleen " -"betrekking op metadata gelezen uit bestandsnamen." +"betrekking op metagegevens gelezen uit bestandsnamen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 msgid "&Swap author firstname and lastname" msgstr "&Verwissel auteur voornaam en achternaam" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 msgid "" "If an existing book with a similar title and author is found that does not " -"have the format being added, the format is added \n" +"have the format being added, the format is added\n" "to the existing book, instead of creating a new entry. If the existing book " "already has the format, then it is silently ignored.\n" "\n" @@ -4715,7 +5603,7 @@ msgid "" "punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 msgid "" "If books with similar titles and authors found, &merge the new files " "automatically" @@ -4723,15 +5611,15 @@ msgstr "" "Voeg nieuwe bestanden automatisch toe indien boeken met zelfde titel en " "auteur worden gevonden." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 msgid "&Configure metadata from file name" -msgstr "&Configureer metadata uit bestandsnaam" +msgstr "&Configureer metagegevens uit bestandsnaam" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 msgid "&Adding books" msgstr "Boeken &Toevoegen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 msgid "" "Here you can control how calibre will save your books when you click the " "Save to Disk button:" @@ -4739,43 +5627,60 @@ msgstr "" "Hier kun je bepalen hoe calibre je boeken zal bewaren wanneer je de bewaar " "op schijf knop aanklikt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 msgid "Save &cover separately" msgstr "Bewaar &Omslag apart" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:127 msgid "Update &metadata in saved copies" -msgstr "Update &metadata in opgeslagen copieën" +msgstr "Update &metagegevens in de opgeslagen copieën" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:128 msgid "Save metadata in &OPF file" -msgstr "Bewaar metadata in &OPF bestand" +msgstr "Bewaar metagegevens in &OPF bestand" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:129 msgid "Convert non-English characters to &English equivalents" msgstr "Converteer niet-Engelse tekens naar &Engelse equivalenten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:130 msgid "Format &dates as:" msgstr "Formatteer &datum als:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:131 msgid "File &formats to save:" msgstr "Op te slaan bestands &formaten:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:132 msgid "Replace space with &underscores" msgstr "Vervang spatie met &underscores" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:133 msgid "Change paths to &lowercase" msgstr "Verander pad in &kleine letters" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:134 msgid "&Saving books" msgstr "&Bewaren boeken" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:135 +msgid "Preserve device collections." +msgstr "Bewaar collecties op het apparaat" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:136 +msgid "" +"If checked, collections will not be deleted even if a book with changed " +"metadata is resent and the collection is not in the book's metadata. In " +"addition, editing collections in the device view will be enabled. If " +"unchecked, collections will be always reflect only the metadata in the " +"calibre library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:137 +msgid " " +msgstr " " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:138 msgid "" "Here you can control how calibre will save your books when you click the " "Send to Device button. This setting can be overriden for individual devices " @@ -4786,45 +5691,46 @@ msgstr "" "bepaalde apparaten door de apparaat interface plugins in te stellen onder " "voorkeuren -> plugins." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:139 msgid "Sending to &device" msgstr "Verstuur naar &apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:504 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:409 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:297 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201 msgid "Preferences" msgstr "Voorkeuren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 msgid "" "&Location of ebooks (The ebooks are stored in folders sorted by author and " "metadata is stored in the file metadata.db)" msgstr "" -"&Locatie van eboeken. (De eboeken zijn opgeslagen in de folders gesorteerd " -"op auteur, en metadata word bewaard in eht bestand metadata.db)" +"&Locatie van de eboeken. (De eboeken zijn opgeslagen in de folders " +"gesorteerd op auteur, en metadata word bewaard in eht bestand metadata.db)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:506 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 msgid "Browse for the new database location" msgstr "Blader naar de nieuwe database locatie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:508 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 msgid "Show notification when &new version is available" msgstr "Notificeer als een &nieuwe versie beschikbaar is" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:509 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 msgid "Download &social metadata (tags/ratings/etc.) by default" -msgstr "Download &sociale metadata (tags/waarderingen/etc.) standaard" +msgstr "Download &sociale metadata (labels, waarderingen, etc) standaard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:510 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 msgid "&Overwrite author and title by default when fetching metadata" msgstr "&Overschrijf auteur en titel standaard met geladen metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 msgid "Default network &timeout:" msgstr "Standaard netwerk &timeout:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:512 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 msgid "" "Set the default timeout for network fetches (i.e. anytime we go out to the " "internet to get information)" @@ -4832,121 +5738,154 @@ msgstr "" "Geef de standaard timeout voor netwerk downloads. (bv. wanneer we informatie " "van het Internet moeten halen)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:513 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 msgid " seconds" msgstr " seconden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:514 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 msgid "Choose &language (requires restart):" msgstr "Kier &taal (herstart nodig)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:515 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 msgid "Normal" msgstr "Standaard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:516 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 msgid "High" msgstr "Hoog" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:517 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 msgid "Low" msgstr "Laag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:518 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 msgid "Job &priority:" msgstr "werk &prioriteit:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:519 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 msgid "Preferred &output format:" msgstr "Voorkeur &uitvoer formaat:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:567 msgid "Preferred &input format order:" msgstr "Voorkeur &invoer formaat volgorde:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:523 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 msgid "Use &Roman numerals for series number" msgstr "Gebruik &Romeinse nummers voor de series" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 msgid "Enable system &tray icon (needs restart)" msgstr "Activeer systeemvak icoon" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 msgid "Show ¬ifications in system tray" msgstr "Laat ¬ificaties zien in het systeemvak" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +msgid "Show &splash screen at startup" +msgstr "Laat het opstartscherm zien" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:574 msgid "Show cover &browser in a separate window (needs restart)" msgstr "Beeld omslag &verkenner in een apart scherm (herstart nodig)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:527 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +msgid "Show &average ratings in the tags browser" +msgstr "L&aat de gemiddelde waarderingen in de catagorieen browser zien" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:576 msgid "Search as you type" msgstr "Zoek al typend" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:577 msgid "Automatically send downloaded &news to ebook reader" msgstr "Zend gedownload &nieuws automatisch naar eboek lezer" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:529 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:578 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" "&Verwijder nieuws van bibliotheek zodra het automatisch naar de lezer is " "verstuurd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:579 msgid "&Number of covers to show in browse mode (needs restart):" msgstr "&Aantal omslagen zichtbaar in verkenner modus (herstart nodig)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:580 msgid "Toolbar" msgstr "Werkbalk" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:581 msgid "Large" msgstr "Groot" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:582 msgid "Medium" msgstr "Middel" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:583 msgid "Small" msgstr "Klein" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:584 msgid "&Button size in toolbar" msgstr "&Knop grootte in werkbalk" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:585 msgid "Show &text in toolbar buttons" msgstr "Laat &tekst zien in werkbalk knoppen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:537 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:586 msgid "Select visible &columns in library view" msgstr "Selecteer zichtbare &kolommen in bibliotheek weergave" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:540 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:588 +msgid "Remove a user-defined column" +msgstr "Verwijder een door de gebruiker gedefinieerde kolom" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:590 +msgid "Add a user-defined column" +msgstr "Voeg een door de gebruiker gedefinieerde kolom toe" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:592 +msgid "Edit settings of a user-defined column" +msgstr "Bewerk een door de gebruiker gedefinieerde kolom" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:595 msgid "Use internal &viewer for:" msgstr "Gebruik interne &viewer voor:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:596 +msgid "User Interface &layout (needs restart):" +msgstr "Gebruikers Interface &layout (heeft een herstart nodig):" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:597 +msgid "Disable all animations. Useful if you have a slow/old computer." +msgstr "" +"Blokkeer alle animaties. Bruikbaar als u een langzame/oude computer heeft." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:598 +msgid "Disable &animations" +msgstr "Blokkeer &animaties" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:599 msgid "Add an email address to which to send books" msgstr "Voeg een email adres toe om boeken naar toe te sturen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:600 msgid "&Add email" msgstr "&Voeg email toe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:601 msgid "Make &default" msgstr "Maak &standaard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:602 msgid "&Remove email" msgstr "Verwijde&r email" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:545 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:603 msgid "" "calibre can send your books to you (or your reader) by email. Emails will be " "automatically sent for downloaded news to all email addresses that have Auto-" @@ -4956,33 +5895,33 @@ msgstr "" "automatisch gestuurd voor gedownload nieuws naar alle email adressen " "waarvoor automatisch opsturen is aangevinkt." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:604 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "&Maximum aantal wachten werk processen (herstart nodig)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:605 msgid "&Check database integrity" msgstr "&Controleer database integriteit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:606 msgid "&Install command line tools" msgstr "Installeer commando regel tools" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:607 msgid "Open calibre &configuration directory" msgstr "Open calibre &configuratie folder" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:608 msgid "Limit the max. simultaneous jobs to the available CPU &cores" msgstr "" "Limiteer het max. aantal gelijktijdige werk processen aan het aantal " "beschikbare processor &cores" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:609 msgid "Debug &device detection" msgstr "Foutopsporing &apparaat detectie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:610 msgid "" "calibre contains a network server that allows you to access your book " "collection using a browser from anywhere in the world. Any changes to the " @@ -4992,25 +5931,25 @@ msgstr "" "bekijken in een webbrowser van waar dan ook ter wereld. Wijzigingen in de " "instellingen hebben pasd effect na het herstarten van de server." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:611 msgid "Server &port:" msgstr "Server &poort:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:612 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "Gebr&uikersnaam:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:613 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "W&achtwoord:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:614 msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." @@ -5018,7 +5957,7 @@ msgstr "" "Als je het wachtwoord blank laat, dan kan iedereen je boek collectie zien " "via de web interface" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:615 msgid "" "The maximum size (widthxheight) for displayed covers. Larger covers are " "resized. " @@ -5026,41 +5965,45 @@ msgstr "" "De maximum dimensie (BreedtexHoogte) voor weergegeven omslagen. Grotere " "omslagen worden in grootte aangepast. " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:616 msgid "Max. &cover size:" msgstr "Max. &Omslag grootte:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:617 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 msgid "&Show password" msgstr "&Geef wachtwoord weer" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:618 msgid "Max. &OPDS items per query:" msgstr "Max. &OPDS onderdelen per zoekopdracht" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:619 +msgid "Max. OPDS &ungrouped items:" +msgstr "Max. OPDS &ongegroepeerde items:" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:620 msgid "&Start Server" msgstr "&Start Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:621 msgid "St&op Server" msgstr "St&op Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:622 msgid "&Test Server" msgstr "&Test Server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:623 msgid "Run server &automatically on startup" msgstr "Start server &automatisch tijdens opstarten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:624 msgid "View &server logs" msgstr "Bekijk &server logs" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:625 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46 msgid "" "

      Remember to leave calibre running as the server only runs as long as " @@ -5078,7 +6021,7 @@ msgstr "" "gequalificeerde hostname of het IP adres van de computer waar calibre op " "draait." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:627 msgid "" "Here you can customize the behavior of Calibre by controlling what plugins " "it uses." @@ -5086,27 +6029,27 @@ msgstr "" "Hiere kun je het gedrag van calibre instellen door te configureren welke " "plugins te gebruiken." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:628 msgid "Enable/&Disable plugin" msgstr "Activeer/&Deactiveer plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:629 msgid "&Customize plugin" msgstr "&Persoonlijke instellingen plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:630 msgid "&Remove plugin" msgstr "&Verwijder plugin" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:631 msgid "Add new plugin" msgstr "Voeg nieuwe plugin toe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:632 msgid "Plugin &file:" msgstr "Plugin &bestand:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:634 msgid "&Add" msgstr "&Toevoegen" @@ -5134,16 +6077,6 @@ msgstr "Gebruik vierkante haakjes" msgid "Values can be edited" msgstr "Waarden kunnen worden aangepast" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:131 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:133 -msgid "Yes" -msgstr "Ja" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:134 -msgid "No" -msgstr "Nee" - #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:135 msgid "Text" msgstr "Tekst" @@ -5153,8 +6086,11 @@ msgid "Number" msgstr "Nummer" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_ct_column_ui.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1162 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:31 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:884 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:542 msgid "Date" msgstr "Datum" @@ -5170,6 +6106,145 @@ msgstr "Verklarende tekst toegevoegd in create_ct_column.py" msgid "Create and edit tag-based columns" msgstr "Maak en wijzig tag-gebaseerde kolommen" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:19 +msgid "Text, column shown in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:22 +msgid "Comma separated text, like tags, shown in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:25 +msgid "Long text, like comments, not shown in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:28 +msgid "Text column for keeping series-like information" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:33 +msgid "Floating point numbers" +msgstr "Floating point numbers" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:35 +msgid "Integers" +msgstr "Integers" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:37 +msgid "Ratings, shown with stars" +msgstr "Waarderingen,met sterren aangegeven" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:40 +msgid "Yes/No" +msgstr "Ja/Nee" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:64 +msgid "No column selected" +msgstr "Geen kolom geselecteerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:65 +msgid "No column has been selected" +msgstr "Er is geen kolom geselecteerd" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:69 +msgid "Selected column is not a user-defined column" +msgstr "Geselecteerde kolom is geen door de gebruiker gedefinieerde kolom" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:100 +msgid "No lookup name was provided" +msgstr "Er was geen opzoek naam gegeven" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:102 +msgid "" +"The label must contain only letters, digits and underscores, and start with " +"a letter" +msgstr "" +"Het label mag alleen letters, cijfers en onderstreep tekens bevatten en moet " +"beginnen met een letter" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:111 +msgid "No column heading was provided" +msgstr "Er was geen kolom koptekst gegeven" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:117 +msgid "The lookup name %s is already used" +msgstr "De opzoeknaam %s is al in gebruik" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:127 +msgid "The heading %s is already used" +msgstr "De koptekst %s is al in gebruik" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column.py:129 +msgid "" +"The lookup name must be lower case and cannot contain \":\"s or spaces" +msgstr "" +"De opzoeknaam moet in kleine letters zijn en mag geen \":\" tekens of " +"spaties bevatten" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:117 +msgid "Create or edit custom columns" +msgstr "Maak of bewerk eigen kolommen" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:102 +msgid "&Lookup name" +msgstr "&Lookup naam" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:103 +msgid "Column &heading" +msgstr "Kolom koptekst" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:104 +msgid "" +"Used for searching the column. Must contain only digits and lower case " +"letters." +msgstr "" +"Gebruikt om de kolom te doorzoeken. Mag alleen cijfers en kleine letters " +"bevatten." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:105 +msgid "" +"Column heading in the library view and category name in the tag browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:106 +msgid "Column &type" +msgstr "Kolom &type" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:107 +msgid "What kind of information will be kept in the column." +msgstr "Wat voor soort gegevens zal er in de kolom opgeslagen worden" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:108 +msgid "" +"

      Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " +"for year.

      \n" +"

      For example:\n" +"

        \n" +"
      • ddd, d MMM yyyy gives Mon, 5 Jan 2010
      • \n" +"
      • dd MMMM yy gives 05 January 10
      • \n" +"
      " +msgstr "" +"

      Datum formaat. Gebruik 1-4 'd's voor dag, 1-4 'M's voor maand, and 2 or 4 " +"'y's voor het jaar.

      \n" +"

      bv:\n" +"

        \n" +"
      • ddd, d MMM yyyy geeft Maa, 5 Jan 2010
      • \n" +"
      • dd MMMM yy geeft 05 Januari 10
      • \n" +"
      " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:114 +msgid "Use MMM yyyy for month + year, yyyy for year only" +msgstr "Gebruik MMM yyyy voor maand + jaar, yyyy voor alleen jaar" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:115 +msgid "Default: dd MMM yyyy." +msgstr "Standaard: dd MMM yyyy." + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/create_custom_column_ui.py:116 +msgid "Format for &dates" +msgstr "&Datum formaat" + #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/device_debug.py:21 msgid "Getting debug information" msgstr "Verkrijg foutoplos informatie" @@ -5204,9 +6279,9 @@ msgid "" msgstr "" "Door het volgende sjabloon aan te passen, kun je beinvloeden in welke " "folders de bestanden worden opgeslagen, en met welke namen. Je kunt het '/' " -"karakter gebruiken om subfolders aan te geven. Beschikbare metadata " +"karakter gebruiken om subfolders aan te geven. Beschikbare metagegevens " "variabelen worden hieronder omschreven. Als een specifiek boek sommige " -"metadata mist, dan zal de variabele een lege regel bevatten." +"metagegevens mist, dan zal de variabele een lege regel bevatten." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/save_template_ui.py:44 msgid "Available variables:" @@ -5214,11 +6289,7 @@ msgstr "Beschikbare variabelen:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/social.py:34 msgid "Downloading social metadata, please wait..." -msgstr "Download sociale metadata, even geduld...." - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:48 -msgid "Are you sure?" -msgstr "Weet je het zeker?" +msgstr "Download sociale metagegevens, even geduld...." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:50 msgid "&Show this warning again" @@ -5228,47 +6299,70 @@ msgstr "&Laat deze waarschuwing nogmaals zien" msgid "ERROR" msgstr "FOUT" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:69 +msgid "Location" +msgstr "Locatie" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1058 +msgid "Format" +msgstr "Formaat" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device_ui.py:50 +msgid "Delete from device" +msgstr "Van apparaat verwijderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:29 +msgid "Author sort" +msgstr "auteur sortering" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:47 +msgid "Manage authors" +msgstr "Auteur beheer" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60 msgid "Author Sort" msgstr "Auteur sortering" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:62 msgid "ISBN" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:162 msgid "Finding metadata..." -msgstr "Zoeken metadata..." +msgstr "Zoeken metagegevens..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:176 msgid "Could not find metadata" -msgstr "Kan metadata niet vinden" +msgstr "Kan metagegevens niet vinden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:177 msgid "The metadata download seems to have stalled. Try again later." -msgstr "De metadata download reageert niet meer. Probeer later nog een keer." +msgstr "" +"De metagegevens download reageert niet meer. Probeer later nog een keer." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:189 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:186 msgid "Warning" msgstr "Waarschuwing" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:187 msgid "Could not fetch metadata from:" -msgstr "Metadata kan niet worden geladen van:" +msgstr "Metagegevens kunnen niet worden geladen van:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:191 msgid "No metadata found" -msgstr "Geen metadata gevonden" +msgstr "Geen metagegevens gevonden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:192 msgid "" "No metadata found, try adjusting the title and author or the ISBN key." msgstr "" -"Geen metadata gevonden, probeer een andere titel en auteur of ISBN nummer." +"Geen metagegevens gevonden, probeer een andere titel en auteur of een ander " +"ISBN nummer." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:85 msgid "Fetch metadata" -msgstr "Download metadata" +msgstr "Download metagegevens" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:86 msgid "" @@ -5277,10 +6371,10 @@ msgid "" "free account and enter your access key " "below." msgstr "" -"

      calibre kan metadata voor uw boeken in twee locaties vinden: Google " -"Books en isbndb.com.

      On isbndb.com te gebruiken zul je eerst " -"een gratis account moeten aanvragen en " -"daarna je wachtwoord hieronder op geven." +"

      calibre kan metagegevens voor uw boeken in twee locaties vinden: " +"Google Books en isbndb.com.

      On isbndb.com te gebruiken zul " +"je eerst op een gratis account moeten " +"aanvragen en daarna je wachtwoord hieronder op geven." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:87 msgid "&Access Key:" @@ -5304,8 +6398,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:91 msgid "Download &social metadata (tags/rating/etc.) for the selected book" msgstr "" -"Download &sociale metadata (tags/waarderingen/etc.) voor het geselecteerde " -"boek" +"Download &sociale metagegevens (labels, waarderingen, etc) voor het " +"geselecteerde boek" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:92 msgid "Overwrite author and title with author and title of selected book" @@ -5333,29 +6427,24 @@ msgstr "Laat werk opdracht &details zien" msgid "Stop &all jobs" msgstr "Stop alle werk opdrachten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:22 -msgid "Editing meta information for %d books" -msgstr "Bewerk meta-informatie voor %d boeken" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:24 +msgid "Editing meta information for %d books" +msgstr "Bewerk van %d boekenCould not fetch cover.
      " msgstr "Omslag kon niet worden gedownload
      " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:556 msgid "The download timed out." msgstr "De download is verbroken" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "Kan geen omslag afbeelding voor dit book vinden. Probeer eerst het ISBN " "nummer op te geven." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:572 msgid "Bad cover" msgstr "Ongeldige omslag afbeelding" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:573 msgid "The cover is not a valid picture" msgstr "De omslag afbeelding is geen geldige afbeelding" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:581 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:606 msgid "There were errors" msgstr "Er zijn fouten opgetreden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:607 msgid "There were errors downloading social metadata" -msgstr "Er waren fouten tijdens het downloaden van de sociale metadata" +msgstr "" +"Er waren fouten tijdens het downloaden van de sociale metagegevens (labels, " +"waarderingen, etc)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:636 msgid "Cannot fetch metadata" -msgstr "Metadata kan niet worden opgevraagd" +msgstr "Metagegevens kunnen niet worden opgevraagd" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:637 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" "Tenminste een van de volgende gegevens is noodzakelijk: ISBN, Titel, Auteurs " "of Uitgever" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:681 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:708 msgid "Permission denied" msgstr "Geen toegang" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:709 msgid "Could not open %s. Is it being used by another program?" msgstr "" "%s van niet worden geopend. Is het in gebruik door een ander programma?" -#: /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:361 msgid "Edit Meta Information" msgstr "Verander Meta Informatie" -#: /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:362 +msgid "Meta information" +msgstr "Meta informatie" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 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:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "Author S&ort: " msgstr "Auteur S&ortering: " -#: /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:370 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Creër automatisch de auteur sortering gebaseerd op de huidige auteur ingave" -#: /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:384 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:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 msgid "IS&BN:" msgstr "IS&BN:" -#: /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:387 msgid "Publishe&d:" msgstr "Uitegeve&n" -#: /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:390 msgid "dd MMM yyyy" msgstr "dd MMM yyyy" -#: /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:391 msgid "&Date:" msgstr "&Datum:" -#: /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:392 msgid "&Comments" msgstr "&Commentaar" -#: /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:393 msgid "&Fetch metadata from server" -msgstr "&Download metadata van server" +msgstr "&Download metagegevens van de server" -#: /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:394 msgid "Available Formats" msgstr "Beschikbare Formaten" -#: /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:395 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:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 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:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 msgid "Set the cover for the book from the selected format" msgstr "Zet de omslag afbeelding van het book van het geselecteerde formaat" -#: /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:401 msgid "Update metadata from the metadata in the selected format" -msgstr "Update metadata van de metadata in het geselecteerde formaat" +msgstr "" +"Update metagegevens van de metagegevens die in het geselecteerde formaat " +"staan" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:399 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406 msgid "Reset cover to default" msgstr "Vervang omslag afbeelding door de standaard afbeelding" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408 msgid "Download &cover" msgstr "Download &omslag afbeelding" @@ -5626,50 +6751,83 @@ msgstr "Wachtwoord Noodzakelijk" msgid "Aborting..." msgstr "Afbreken..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:54 +msgid "" +"The current saved search will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:83 +msgid "Saved Search Editor" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:84 +msgid "Saved Search: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:85 +msgid "Select a saved search to edit" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:86 +msgid "Delete this selected saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 +msgid "Enter a new saved search name." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 +msgid "Add the new saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 +msgid "Change the contents of the saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:119 msgid "Need username and password" msgstr "Gebruikersnaam en wachtwoord zijn vereist" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:120 msgid "You must provide a username and/or password to use this news source." msgstr "" "Een gebruikersnaam en/of wachtwoord zijn noodzakelijk om deze nieuwsbron te " "benaderen." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:171 msgid "Created by: " msgstr "Gemaakt door: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:178 msgid "Last downloaded: never" msgstr "Laatst gedownload: nooit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:193 msgid "%d days, %d hours and %d minutes ago" msgstr "%d dagen, %d uur en %d minuten geleden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:195 msgid "Last downloaded" msgstr "Laatst gedownload" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:217 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:192 msgid "Schedule news download" msgstr "Plan nieuwe download" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:219 msgid "Add a custom news source" msgstr "Voeg een persoonlijke nieuwsbron toe" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:224 msgid "Download all scheduled new sources" msgstr "Download alle geplande nieuwe bronnen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:322 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:321 msgid "No internet connection" msgstr "Geen internetverbinding" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:322 msgid "Cannot download news as no internet connection is active" msgstr "" "Kan geen nieuws downloaden, omdat er geen actieve internet verbinding is" @@ -5848,19 +7006,20 @@ msgstr "Welke vergelijking gebruiken:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:121 msgid "Contains: the word or phrase matches anywhere in the metadata" -msgstr "Bevat: het woord of de uitdrukking komt ergens in de metadata voor" +msgstr "" +"Bevat: het woord of de uitdrukking komt ergens in de metagegevens voor" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:122 msgid "Equals: the word or phrase must match an entire metadata field" msgstr "" -"Gelijk aan: het woord of the uitdrukken komt overeen met een compleet veld " -"in de metadata" +"Gelijk aan: het woord of de zin komt overeen met een compleet veld in de " +"metagegevens" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:123 msgid "" "Regular expression: the expression must match anywhere in the metadata" msgstr "" -"Reguliere expressie: uitdrukking moet ergens in de metadata voorkomen" +"Reguliere expressie: de expressie moet ergens in de metagegevens voorkomen" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:124 msgid " " @@ -5878,11 +7037,79 @@ msgstr "" msgid "Choose formats" msgstr "Kies formaten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:76 +msgid "Authors" +msgstr "Auteurs" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:46 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:107 +msgid "Publishers" +msgstr "Uitgevers" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:110 +msgid " (not on any book)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:162 +msgid "" +"The current tag category will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:153 +msgid "User Categories Editor" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:154 +msgid "A&vailable items" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:155 +msgid "Apply tags to current tag category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:157 +msgid "A&pplied items" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:158 +msgid "Unapply (remove) tag from current tag category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:160 +msgid "Category name: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:161 +msgid "Select a category to edit" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:162 +msgid "Delete this selected tag category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:164 +msgid "Enter a new category name. Select the kind before adding it." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:165 +msgid "Add the new category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:167 +msgid "Category filter: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:168 +msgid "Select the content kind of the new category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:101 msgid "Are your sure?" msgstr "Weet U het zeker?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:69 msgid "" "The following tags are used by one or more books. Are you certain you want " "to delete them?" @@ -5935,6 +7162,58 @@ msgid "Add tag to available tags and apply it to current book" msgstr "" "Voeg een label toe aan de beschikbare lijst, evenals aan het huidige boek" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:70 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:501 +msgid "Item is blank" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:502 +msgid "An item cannot be set to nothing. Delete it instead." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:87 +msgid "No item selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:88 +msgid "You must select one item from the list of Available items." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:97 +msgid "No items selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:98 +msgid "You must select at least one items from the list." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:102 +msgid "Are you certain you want to delete the following items?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:72 +msgid "Category Editor" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:73 +msgid "Items in use" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:74 +msgid "" +"Delete item from database. This will unapply the item from all books and " +"then remove it from the database." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:76 +msgid "Rename the item in every book where it is used." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:78 +msgid "Ctrl+S" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:51 msgid "Test email settings" msgstr "Test email instellingen" @@ -6174,8 +7453,8 @@ msgstr "" "weight:400; font-style:normal;\">\n" "

      Geef een reguliere " -"expressie pattron om te gebruiken met het raden van eboek metadata gebaseerd " -"op bestandsnamen.

      \n" +"expressie patroon op om te gebruiken bij het raden van eboek metagegevens " +"gebaseerd op bestandsnamen.

      \n" "

      Een )" msgstr "Reguliere expressie (?P)" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:53 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:36 +msgid "Save single format to disk..." +msgstr "Bewaar enkel formaat op schijf..." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:52 +msgid "Edit metadata individually" +msgstr "Bewerk metagegevens individueel" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:55 +msgid "Edit metadata in bulk" +msgstr "Bewerk metagegevens op groepsnivo" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:58 +msgid "Download metadata and covers" +msgstr "Download metagegevens en omslag afbeeldingen" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:61 +msgid "Download only metadata" +msgstr "Download alleen metagegevens" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:63 +msgid "Download only covers" +msgstr "Download alleen omslag afbeeldingen" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:66 +msgid "Download only social metadata" +msgstr "Download alleen sociale metagegevens (labels, waarderingen, etc)" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:72 +msgid "Merge into first selected book - delete others" +msgstr "Samenvoegen met het eerste geselecteerde boek - verwijder de anderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:75 +msgid "Merge into first selected book - keep others" +msgstr "Samenvoegen met het eerste geselecteerde boek - behoudt de anderen" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:83 +msgid "Add books from a single directory" +msgstr "Voeg boeken toe uit een enkele folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:85 +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 "" +"Voeg boeken toe uit folders, inclusief sub-folders (Een boek per folder, " +"neemt aan dat ieder eboek bestand hetzelfde boek in een ander formaat bevat)" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:89 +msgid "" +"Add books from directories, including sub directories (Multiple books per " +"directory, assumes every ebook file is a different book)" +msgstr "" +"Voeg boeken toe uit folders, inclusief sub-folders (Meerdere boeken per " +"folder, neemt aan dat ieder eboek bestand een ander boek bevat)" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:92 +msgid "Add Empty book. (Book entry with no formats)" +msgstr "Voeg leeg boek toe (Boek zonder formaten)" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:283 +msgid "Save to disk" +msgstr "Opslaan op schijf" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:104 +msgid "Save to disk in a single directory" +msgstr "Opslaan op schijf in een enkele folder" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:106 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:402 +msgid "Save only %s format to disk" +msgstr "Bewaar alleen %s formaat op schijf" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:405 +msgid "Save only %s format to disk in a single directory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:289 +msgid "View" +msgstr "Bekijk" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:120 +msgid "View specific format" +msgstr "Bekijk specifiek formaat" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:126 +msgid "Remove selected books" +msgstr "Verwijder geselecteerde boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:128 +msgid "Remove files of a specific format from selected books.." +msgstr "" +"Verwijder bestanden in een specifiek formaat van de geselecteerde boeken.." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:131 +msgid "Remove all formats from selected books, except..." +msgstr "Verwijder alle formaten van de geselecterde boeken, behalve..." + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:134 +msgid "Remove covers from selected books" +msgstr "Verwijder omslagen van de geselecteerde boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:137 +msgid "Remove matching books from device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:154 +msgid "Convert individually" +msgstr "Converteer Individueel" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:156 +msgid "Bulk convert" +msgstr "Converteer Groep" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:160 +msgid "Create catalog of books in your calibre library" +msgstr "Maak catalogus van boeken in je calibre bibliotheek" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:168 +msgid "Run welcome wizard" +msgstr "Start de welkom wizard" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:200 +msgid "Similar books..." +msgstr "Vergelijkbare boeken" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:232 +msgid "Add books to library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:248 +msgid "Manage collections" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:328 +msgid "Cover Browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:346 +msgid "Tag Browser" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/init.py:403 +msgid "Book Details" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:60 msgid "Job" msgstr "Opdracht" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:54 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:61 msgid "Status" msgstr "Status" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:62 msgid "Progress" msgstr "Voortgang" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:63 msgid "Running time" msgstr "Werktijd" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:75 msgid "There are %d running jobs:" msgstr "Er zijn %d draaiende werkopdrachten:" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:72 #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:101 msgid "Unknown job" msgstr "Onbekende taak" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:82 msgid "There are %d waiting jobs:" msgstr "Er zijn %d wachtende werkopdrachten:" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:211 -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:216 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:219 msgid "Cannot kill job" msgstr "Opdracht kan niet worden afgebroken" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:217 msgid "Cannot kill jobs that communicate with the device" msgstr "" "Taken die met het apparaat communicaren kunnen niet worden afgebroken" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:220 msgid "Job has already run" msgstr "Taak is al uitgevoerd" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:248 msgid "Unavailable" msgstr "Niet beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:280 +msgid "Jobs:" +msgstr "Opdrachten" + +#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:298 +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/jobs.py:358 msgid " - Jobs" msgstr " - Taken" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1161 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 +msgid "N" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:284 +msgid "Y" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 +msgid "On Device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 msgid "Size (MB)" msgstr "Grootte (MB)" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71 msgid "Rating" msgstr "Waardering" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:365 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:376 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:440 -msgid "None" -msgstr "Geen" - -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:324 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1078 msgid "Book %s of %s." msgstr "Boek %s van %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:899 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:674 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399 +msgid "The lookup/search name is \"{0}\"" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:881 +msgid "In Library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:885 +msgid "Size" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1156 +msgid "Marked for deletion" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1159 +msgid "Double click to edit me

      " +msgstr "Dubbel-klik om me te wijzigen

      " + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:110 +msgid "Hide column %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:115 +msgid "Sort on %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:116 +msgid "Ascending" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:119 +msgid "Descending" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:131 +msgid "Change text alignment for %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 +msgid "Left" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:133 +msgid "Right" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:134 +msgid "Center" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:153 +msgid "Show column" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165 +msgid "Restore default layout" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:524 msgid "Not allowed" msgstr "Niet toegestaan" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:900 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:525 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -6336,14 +7839,6 @@ msgstr "" "Direct op een device loslaten is niet ondersteund. Voeg het boek eerst toe " "aan de calibre bibliotheek" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1100 -msgid "Format" -msgstr "Formaat" - -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1151 -msgid "Double click to edit me

      " -msgstr "Dubbel-klik om me te wijzigen

      " - #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:47 msgid "Configure Viewer" msgstr "Configureer Viewer" @@ -6419,132 +7914,154 @@ msgstr "Open eboek" msgid "Configure" msgstr "Configureer" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:30 msgid "Use the library located at the specified path." msgstr "Gebruik de bibliotheek in de opgegeven locatie" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:32 msgid "Start minimized to system tray." msgstr "Start geminimaliseerd in het systeemvak" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:32 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:34 msgid "Log debugging information to console" msgstr "Schrijf foutoplossings informatie naar console" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:36 msgid "Do not check for updates" msgstr "Check niet voor updates" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:65 -msgid "Choose a location for your calibre e-book library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:74 -msgid "Failed to create library" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:75 -msgid "Failed to create calibre library at: %r. Aborting." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:145 -msgid "Repairing failed" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:146 -msgid "The database repair failed. Starting with a new empty library." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:595 msgid "Calibre Library" msgstr "Calibre Bibliotheek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:86 +msgid "Choose a location for your calibre e-book library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95 +msgid "Failed to create library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96 +msgid "Failed to create calibre library at: %r." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:184 msgid "Choose a location for your new calibre e-book library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:173 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:153 +msgid "Initializing user interface..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:178 +msgid "Repairing failed" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:179 +msgid "The database repair failed. Starting with a new empty library." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:226 msgid "Bad database location" msgstr "Ongeldige database locatie" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 msgid "Bad database location %r. calibre will now quit." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 msgid "Corrupted database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:208 msgid "" "Your calibre database appears to be corrupted. Do you want calibre to try " "and repair it automatically? If you say No, a new empty calibre library will " "be created." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:214 msgid "" "Repairing database. This can take a very long time for a large collection" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "" "Bad database location %r. Will start with a new, empty calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +msgid "Starting %s: Loading books..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:283 msgid "If you are sure it is not running" msgstr "Weet je zeker dat het niet draait?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:252 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:285 msgid "Cannot Start " msgstr "Kan niet starten " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:286 msgid "%s is already running." msgstr "%s is al actief." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 msgid "may be running in the system tray, in the" msgstr "kan in het systeemvak draaien, in de" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:258 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "upper right region of the screen." msgstr "recht boven regio van het scherm." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:260 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:293 msgid "lower right region of the screen." msgstr "recht onder regio van het scherm." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:296 msgid "try rebooting your computer." msgstr "probeer de computer opnieuw op te starten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:265 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:277 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:310 msgid "try deleting the file" msgstr "probeer het bestand te verwijderen" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:253 msgid "calibre" msgstr "Calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255 +msgid "&Restrict to:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:256 +msgid "" +"Books display will be restricted to those matching the selected saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:257 +msgid "set in ui.py" +msgstr "gezet in ui.py" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:258 msgid "Advanced search" msgstr "Geavanceerde Zoekopdracht" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:260 msgid "Alt+S" msgstr "Alt+S" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:261 msgid "&Search:" msgstr "&Zoeken:" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:370 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:371 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:263 msgid "" "

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

      Words separated by spaces are ANDed" @@ -6552,142 +8069,116 @@ msgstr "" "

      Zoek door de boekenlijst gesorteerd op titek, auteur, uitgever, labels, " "commentaar, enz.

      Woorden gescheiden door spaties worden samengevoegd" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:372 -msgid "set in ui.py" -msgstr "gezet in ui.py" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:264 msgid "Reset Quick Search" msgstr "Snelzoeken wissen" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:266 msgid "Choose saved search or enter name for new saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:267 msgid "Copy current search text (instead of search name)" msgstr "Kopieer de huidige zoektekst (in plaats van zoeknaam)" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:269 msgid "Save current search under the name shown in the box" msgstr "Bewaar de huidige zoekopdracht onder de naam getoond in de box" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271 msgid "Delete current saved search" msgstr "Verwijder de huidige bewaarde zoekopdracht" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:382 -msgid "Sort by &popularity" -msgstr "Sorteer bij &populariteit" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:383 -msgid "Match any" -msgstr "Match iedere" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:384 -msgid "Match all" -msgstr "Match alle" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:385 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:273 msgid "Add books" msgstr "Voeg boeken toe" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:274 msgid "A" msgstr "A" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:275 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:276 msgid "Remove books" msgstr "Verwijder boeken" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:389 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:277 msgid "Del" msgstr "Del" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:278 msgid "Edit meta information" msgstr "Wijzig meta informatie" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:279 msgid "E" msgstr "E" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:392 -msgid "Merge books" -msgstr "Boeken samenvoegen" +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:280 +msgid "Merge book records" +msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:281 msgid "M" msgstr "M" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:282 msgid "Send to device" msgstr "Zend naar lezer" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:395 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:347 -msgid "Save to disk" -msgstr "Opslaan op schijf" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:284 msgid "S" msgstr "S" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:285 msgid "Fetch news" msgstr "Download nieuws" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:286 msgid "F" msgstr "F" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:399 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:287 msgid "Convert E-books" msgstr "Converteer E-boeken" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:400 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:288 msgid "C" msgstr "C" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:401 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:357 -msgid "View" -msgstr "Bekijk" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:290 msgid "V" msgstr "V" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:403 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:291 msgid "Open containing folder" msgstr "Open betreffende map" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:292 msgid "Show book details" msgstr "Laat boek details zien" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:405 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:293 msgid "Books by same author" msgstr "Boeken van dezelfde auteur" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:406 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:294 msgid "Books in this series" msgstr "Boeken in deze serie" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:295 msgid "Books by this publisher" msgstr "Boeken van deze uitgever" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:296 msgid "Books with the same tags" msgstr "Boeken met dezelfde labels" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:298 msgid "Configure calibre" msgstr "configueer calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:299 msgid "Ctrl+P" msgstr "Ctrl+P" @@ -6719,11 +8210,35 @@ msgstr "Boek heeft geen titel en geen ISBN" msgid "No matches found for this book" msgstr "Geen overeenkomsten gevonden voor dit boek" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:260 msgid "Search" msgstr "Zoeken" +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:313 +msgid "The selected search will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:355 +msgid "Search (For Advanced Search click the button to the left)" +msgstr "Zoeken (Voor geavanceerd zoeken klik op de knop links)" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 +msgid "Saved Searches" +msgstr "Opgeslagen zoekopdrachten" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:46 +msgid "({0} of {1})" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:52 +msgid "(all books)" +msgstr "(alle boeken)" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 +msgid "({0} of all)" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:58 msgid "Press a key..." msgstr "Druk een toets" @@ -6784,46 +8299,77 @@ msgstr "Wissen" msgid "&Alternate shortcut:" msgstr "&Alternative snelkoppeling" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 -msgid "Jobs:" -msgstr "Opdrachten" - -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:163 -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:201 -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:201 -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:206 -msgid "" -"

      Browsing books by their covers is disabled.
      Import of pictureflow " -"module failed:
      " +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:191 +msgid "Rename '%s'" msgstr "" -"

      Bekijken van boeken op omslag is uitgeschakeld.
      Importeren van " -"pictureflow module is mislukt:
      " -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:214 -msgid "Click to browse books by tags" -msgstr "Klik voor boeken gegroepeerd per label" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:195 +msgid "Edit sort for '%s'" +msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Authors" -msgstr "Auteurs" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:200 +msgid "Hide category %s" +msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 -msgid "Publishers" -msgstr "Uitgevers" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:203 +msgid "Show category" +msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:151 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:207 +msgid "Show all categories" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:218 +msgid "Manage %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:221 +msgid "Manage Saved Searches" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:232 +msgid "Manage User Categories" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:271 msgid "Searches" msgstr "Zoekopdrachten" +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:511 +msgid "Duplicate search name" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:512 +msgid "The saved search name %s is already used." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by name" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:768 +msgid "Sort by popularity" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:769 +msgid "Sort by average rating" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 +msgid "Match all" +msgstr "Match alle" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:775 +msgid "Match any" +msgstr "Match iedere" + +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780 +msgid "Manage &user categories" +msgstr "" + #: /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)" @@ -6867,576 +8413,63 @@ msgstr "" "De volgende boeken waren al geconverteerd naar %s formaat. Wil je dit " "nogmaals doen?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:67 -msgid "Save single format to disk..." -msgstr "Bewaar enkel formaat op schijf..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:148 -msgid "Search (For Advanced Search click the button to the left)" -msgstr "Zoeken (Voor geavanceerd zoeken klik op de knop links)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:154 -msgid "Saved Searches" -msgstr "Opgeslagen zoekopdrachten" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:177 -msgid "Error communicating with device" -msgstr "Fout bij communicatie met lezer" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:194 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:162 msgid "&Restore" msgstr "He&rstellen" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:164 msgid "&Donate to support calibre" msgstr "Ondersteun calibre met een &Donatie" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:167 msgid "&Eject connected device" msgstr "Aangesloten apparaat ontkoppelen" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:204 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:172 msgid "&Restart" msgstr "&Herstarten" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:244 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:206 msgid "

      For help see the: User Manual
      " msgstr "" "

      Voor assistentie, zie het Gebruikers handboek
      " -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:250 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:212 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/ui.py:273 -msgid "Edit metadata individually" -msgstr "Bewerk metadata individueel" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:275 -msgid "Edit metadata in bulk" -msgstr "Bewerk metadata in groep" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:277 -msgid "Download metadata and covers" -msgstr "Download metadata en omslag afbeeldingen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:278 -msgid "Download only metadata" -msgstr "Download alleen metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:279 -msgid "Download only covers" -msgstr "Download alleen omslag afbeeldingen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:280 -msgid "Download only social metadata" -msgstr "Download alleen sociale metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:284 -msgid "Merge into first selected book - delete others" -msgstr "Samenvoegen met het eerste geselecteerde boek - verwijder de anderen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:286 -msgid "Merge into first selected book - keep others" -msgstr "Samenvoegen met het eerste geselecteerde boek - behoudt de anderen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:293 -msgid "Add books from a single directory" -msgstr "Voeg boeken toe uit een enkele folder" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:294 -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 "" -"Voeg boeken toe uit folders, inclusief sub-folders (Een boek per folder, " -"neemt aan dat ieder eboek bestand hetzelfde boek in een ander formaat bevat)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:297 -msgid "" -"Add books from directories, including sub directories (Multiple books per " -"directory, assumes every ebook file is a different book)" -msgstr "" -"Voeg boeken toe uit folders, inclusief sub-folders (Meerdere boeken per " -"folder, neemt aan dat ieder eboek bestand een ander boek bevat)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:300 -msgid "Add Empty book. (Book entry with no formats)" -msgstr "Voeg leeg boek toe (Boek zonder formaten)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:348 -msgid "Save to disk in a single directory" -msgstr "Opslaan op schijf in een enkele folder" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2172 -msgid "Save only %s format to disk" -msgstr "Bewaar alleen %s formaat op schijf" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:358 -msgid "View specific format" -msgstr "Bekijk specifiek formaat" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:363 -msgid "Remove selected books" -msgstr "Verwijder geselecteerde boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:365 -msgid "Remove files of a specific format from selected books.." -msgstr "" -"Verwijder bestanden in een specifiek formaat van de geselecteerde boeken.." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:367 -msgid "Remove all formats from selected books, except..." -msgstr "Verwijder alle formaten van de geselecterde boeken, behalve..." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:369 -msgid "Remove covers from selected books" -msgstr "Verwijder omslagen van de geselecteerde boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:406 -msgid "Convert individually" -msgstr "Converteer Individueel" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:407 -msgid "Bulk convert" -msgstr "Converteer Groep" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:410 -msgid "Create catalog of books in your calibre library" -msgstr "Maak catalogus van boeken in je calibre bibliotheek" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:426 -msgid "Run welcome wizard" -msgstr "Start de welkom wizard" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:462 -msgid "Similar books..." -msgstr "Vergelijkbare boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237 msgid "Calibre Quick Start Guide" msgstr "Calibre snelstart handboek" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:745 -msgid "Browse by covers" -msgstr "Zoek op omslag afbeelding" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:802 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:806 -msgid "(all books)" -msgstr "(alle boeken)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:811 -msgid "(%d found)" -msgstr "(%d gevonden)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:901 -msgid "Device: " -msgstr "Apparaat: " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:903 -msgid " detected." -msgstr " gedetecteerd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:931 -msgid "Connected " -msgstr "Verbonden " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:943 -msgid "Device database corrupted" -msgstr "Apparaat Database Beschadigd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:944 -msgid "" -"\n" -"

      The database of books on the reader is corrupted. Try the " -"following:\n" -"

        \n" -"
      1. Unplug the reader. Wait for it to finish regenerating " -"the database (i.e. wait till it is ready to be used). Plug it back in. Now " -"it should work with %(app)s. If not try the next step.
      2. \n" -"
      3. Quit %(app)s. Find the file media.xml in the reader's " -"main memory. Delete it. Unplug the reader. Wait for it to regenerate the " -"file. Re-connect it and start %(app)s.
      4. \n" -"
      \n" -" " -msgstr "" -"\n" -"

      De boek database op de lezer is beschadigd. Probeer het " -"volgende:\n" -"

        \n" -"
      1. Verwijder de lezer. Wacht tot het klaar is met het " -"genereren van de database. Sluit de lezer opnieuw aan. Het zou nu weer " -"moeten werken met %(app)s. Zoniet, probeer dan de volgende optie.
      2. \n" -"
      3. slut %(app)s af. Zoek het bestand media.xml in de " -"lezer's hoofdgeheugen. Verwijder dit bestand. Verwijder de lezer weer. Wacht " -"totdat het bestand opnieuw is gegenereerd. Sluit de lezer opnieuw aan, en " -"start %(app)s.
      4. \n" -"
      \n" -" " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1003 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1180 -msgid "Use library only" -msgstr "Gebruik alleen de bibliotheek" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1004 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1181 -msgid "User annotations generated from main library only" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1011 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1492 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1549 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1587 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1608 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1734 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1799 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1917 -msgid "No books selected" -msgstr "Geen boeken geselecteerd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1012 -msgid "No books selected to fetch annotations from" -msgstr "" -"Er zijn geen boeken geselecteerd waarvan annotaties kunnen worden opgehaald" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1037 -msgid "Merging user annotations into database" -msgstr "Voeg annotaties van gebruikers samen in een database" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1065 -msgid "%s
      Last Page Read: %d (%d%%)" -msgstr "%s
      Laatste gelezen pagina: %d (%d%%)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1071 -msgid "%s
      Last Page Read: Location %d (%d%%)" -msgstr "%s
      Laatste gelezen pagina: Locatie %d (%d%%)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1090 -msgid "Location %d • %s
      %s
      " -msgstr "Locatie %d • %s
      %s
      " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1099 -msgid "Page %d • %s
      " -msgstr "Pagina %d • %s
      " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1104 -msgid "Location %d • %s
      " -msgstr "Locatie %d • %s
      " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1224 -msgid "How many empty books?" -msgstr "Hoeveel lege boeken?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1225 -msgid "How many empty books should be added?" -msgstr "Hoeveel lege boeken moeten worden toegevoegd?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1273 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1324 -msgid "Uploading books to device." -msgstr "Boeken worden geupload naar de lezer." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1285 -msgid "EPUB Books" -msgstr "EPUB Boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1286 -msgid "LRF Books" -msgstr "LRF Boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1287 -msgid "HTML Books" -msgstr "HTML Boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1288 -msgid "LIT Books" -msgstr "LIT Boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1289 -msgid "MOBI Books" -msgstr "MOBI Boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1290 -msgid "Topaz books" -msgstr "Topaz boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1291 -msgid "Text books" -msgstr "Text boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1292 -msgid "PDF Books" -msgstr "PDF Boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1293 -msgid "Comics" -msgstr "Stripverhalen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1294 -msgid "Archives" -msgstr "Archief" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1298 -msgid "Supported books" -msgstr "Ondersteunde boeken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1333 -msgid "Merged some books" -msgstr "Enkele boeken zijn samengevoegd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1334 -msgid "" -"Some duplicates were found and merged into the following existing books:" -msgstr "" -"Er zijn duplicaten gevonden en samengevoegd met de volgende bestande boeken:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1343 -msgid "Failed to read metadata" -msgstr "Niet gelukt metadata te lezen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1344 -msgid "Failed to read metadata from the following" -msgstr "Metadata kon niet worden gelezen van de volgende" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1364 -msgid "Cannot delete" -msgstr "Kan niet verwijderen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1367 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2061 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2077 -msgid "No book selected" -msgstr "Geen boek geselecteerd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1377 -msgid "Choose formats to be deleted" -msgstr "Kies formaten om te verwijderen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1395 -msgid "Choose formats not to be deleted" -msgstr "Kies formaten die niet moeten worden verwijderd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1433 -msgid "" -"The selected books will be permanently deleted and the files removed " -"from your computer. Are you sure?" -msgstr "" -"De geselecteerde boeken zullen permanent worden verwijderd en de " -"bestanden gewist van de computer. Weet je dit zeker?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1460 -msgid "Deleting books from device." -msgstr "Boeken worden verwijderd van de lezer." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1491 -msgid "Cannot download metadata" -msgstr "Metadata kan niet worden gedownload" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1507 -msgid "social metadata" -msgstr "sociale metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1509 -msgid "covers" -msgstr "Omslag afbeeldingen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1509 -msgid "metadata" -msgstr "metadata" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1511 -msgid "Downloading %s for %d book(s)" -msgstr "Downloaden van %s voor %d boek(en)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1533 -msgid "Failed to download some metadata" -msgstr "Sommige metadata kon niet worden gedownload" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1534 -msgid "Failed to download metadata for the following:" -msgstr "Metadata kon niet worden gedownload voor de volgende:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1537 -msgid "Failed to download metadata:" -msgstr "Metadata kon niet worden gedownload:" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1548 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1586 -msgid "Cannot edit metadata" -msgstr "Metedata kan niet worden gewijzigd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1607 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1610 -msgid "Cannot merge books" -msgstr "Kan boeken niet samenvoegen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1611 -msgid "At least two books must be selected for merging" -msgstr "" -"Er moeten tenminste twee boeken worden geselecteerd om samen te voegen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1615 -msgid "" -"All book formats and metadata from the selected books will be added to the " -"first selected book.

      The second and subsequently selected " -"books will not be deleted or changed.

      Please confirm you want to " -"proceed." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1626 -msgid "" -"All book formats and metadata from the selected books will be merged into " -"the first selected book.

      After merger the second and " -"subsequently selected books will be deleted.

      All book formats " -"of the first selected book will be kept and any duplicate formats in the " -"second and subsequently selected books will be permanently deleted " -"from your computer.

      Are you sure you want to proceed?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1638 -msgid "" -"You are about to merge more than 5 books. Are you sure you want to " -"proceed?" -msgstr "" -"Je staat op het punt meer dan 5 boeken samen te voegen. Weet je zeker " -"dat je dat wilt doen?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1733 -msgid "Cannot save to disk" -msgstr "Kan niet naar schijf worden opgeslagen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1736 -msgid "Choose destination directory" -msgstr "Kies een bestemmingsmap" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1769 -msgid "Error while saving" -msgstr "Fout tijdens opslaan" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1770 -msgid "There was an error while saving." -msgstr "Er is een fout opgetreden tijdens het opslaan." - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1777 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1778 -msgid "Could not save some books" -msgstr "Sommige boeken konden niet worden opgeslagen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1779 -msgid "Click the show details button to see which ones." -msgstr "Klik de 'laat details zien' knop om te zien welke" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1800 -msgid "No books selected to generate catalog for" -msgstr "Geen boeken geselecteerd voor catalogus" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1817 -msgid "Generating %s catalog..." -msgstr "Genereren %s catalogus" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1823 -msgid "" -"No books to catalog\n" -"Check exclude tags" -msgstr "" -"Geen boeken te catalogiseren\n" -"Check uitsluitingstags" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1833 -msgid "Catalog generated." -msgstr "Catalogus aangemaakt" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1836 -msgid "Export Catalog Directory" -msgstr "Exporteer Catalogus Folder" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1837 -msgid "Select destination for %s.%s" -msgstr "Selecteer uitvoer voor %s.%s" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1851 -msgid "Fetching news from " -msgstr "Downloading nieuws van " - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1865 -msgid " fetched." -msgstr " opgehaald" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1916 -msgid "Cannot convert" -msgstr "Kan niet converteren" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1945 -msgid "Starting conversion of %d book(s)" -msgstr "Start conversie van %d boek(en)" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2061 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2114 -msgid "Cannot view" -msgstr "Kan niet bekijken" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2076 -msgid "Cannot open folder" -msgstr "Kan folder niet openen" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2098 -msgid "Multiple Books Selected" -msgstr "Meerdere Boeken Geselecteerd" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2099 -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 "" -"Je probeert %d boeken te openen. Te veel boeken tegelijkertijd openen kan " -"veel tijd in belsag nemen, een een negatief effect op de responsiviteit van " -"je computer. Eenmaal gestart kan dit proces niet worden afgebroken totdat " -"het klaar is. Wil je verder gaan?" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2115 -msgid "%s has no available formats." -msgstr "%s heeft geen beschikbare formaten" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2156 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:389 msgid "Cannot configure" msgstr "Kan niet configureren" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2157 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:385 msgid "Cannot configure while there are running jobs." msgstr "Can niet configueren terwijl bestaande opdrachten bezig zijn" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2200 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:390 +msgid "Cannot configure before calibre is restarted." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:433 msgid "No detailed info available" msgstr "Geen details beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2201 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:434 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/ui.py:2257 -msgid "Error talking to device" -msgstr "Fout bij communicatie met lezer" - -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2258 -msgid "" -"There was a temporary error talking to the device. Please unplug and " -"reconnect the device and or reboot." -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/ui.py:2281 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2309 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:514 msgid "Conversion Error" msgstr "Converteer Fout" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2282 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:487 msgid "" "

      Could not convert: %s

      It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -7444,15 +8477,15 @@ msgstr "" "

      Kon %s niet converteren.

      Het is een eboek met DRM. " "Je moet eerst de DRM verwijderen met externe programma's." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2295 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:500 msgid "Recipe Disabled" msgstr "Recept uitgeschakeld" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2310 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:515 msgid "Failed" msgstr "Mislukt" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2358 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:555 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." @@ -7461,12 +8494,12 @@ msgstr "" "wereld. Als je het nuttig vind, overweeg dan svp te doneren om de " "ontwikkeling te ondersteunen." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2383 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" "Er zijn actieve werk opdrachten. Weet je zeker dat je af wilt sluiten?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2386 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:583 msgid "" " is communicating with the device!
      \n" " Quitting may cause corruption on the device.
      \n" @@ -7477,11 +8510,11 @@ msgstr "" "apparaat.
      \n" " Weet je zeker dat je af wilt sluiten?" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2390 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587 msgid "WARNING: Active jobs" msgstr "Waarschuwing: actieve werk opdrachten" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2442 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:640 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -7489,7 +8522,7 @@ msgstr "" "Zal blijven draaien in het systeemvak. Om het af te sluiten, kies " "Afsluiten in het context menu in het systeemvak." -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2461 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:52 msgid "" "Latest version: %s" @@ -7497,11 +8530,11 @@ msgstr "" "Laatste versie: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2469 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:60 msgid "Update available" msgstr "Update beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:2470 +#: /home/kovid/work/calibre/src/calibre/gui2/update.py:61 msgid "" "%s has been updated to version %s. See the new features. Visit the download page?" @@ -7855,7 +8888,7 @@ msgstr "Geen zoekterm gevonden voor: %s" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:478 msgid "Loading flow..." -msgstr "Laden Vloed..." +msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:514 msgid "Laying out %s" @@ -7982,15 +9015,15 @@ msgstr "" msgid "Print eBook" msgstr "Print eboek" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:239 msgid "Copy Image" msgstr "Afbeelding kopiëren" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:240 msgid "Paste Image" msgstr "Afbeelding Plakken" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:270 msgid "" "Library\n" "%d\n" @@ -8000,7 +9033,7 @@ msgstr "" "%d\n" "boeken" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:271 msgid "" "Reader\n" "%s\n" @@ -8010,7 +9043,7 @@ msgstr "" "%s\n" "beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:272 msgid "" "Card A\n" "%s\n" @@ -8020,7 +9053,7 @@ msgstr "" "%s\n" "beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:273 msgid "" "Card B\n" "%s\n" @@ -8030,43 +9063,59 @@ msgstr "" "%s\n" "beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:277 msgid "Click to see the books available on your computer" msgstr "Klik hier om de boeken te zien die beschikbaar zijn op uw computer" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:280 msgid "Click to see the books in the main memory of your reader" msgstr "Klik hier om de boeken te zien in het hoofdgeheugen van je lezer" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:281 msgid "Click to see the books on storage card A in your reader" msgstr "Klik hier om de boeken te zien op opslagkaart A in je lezer" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:282 msgid "Click to see the books on storage card B in your reader" msgstr "Klik hier om de boeken te zien op opslagkaart B in je lezer" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:290 +msgid "Books located at" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:548 msgid "Change Case" msgstr "Lettervorm wijzigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:531 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:549 msgid "Upper Case" msgstr "Hoofdletters" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:550 msgid "Lower Case" msgstr "Kleine letters" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:551 msgid "Swap Case" msgstr "Lettervorm Wijzigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:552 msgid "Title Case" msgstr "Elk Woord Met Hoofdletter" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:974 +msgid "Drag to resize" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1006 +msgid "Show" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1012 +msgid "Hide" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:367 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 " @@ -8076,7 +9125,7 @@ msgstr "" "kun je de calibre boek collectie direct op je telefoon bekijken. Om dit te " "doen zul je de content server moeten inschakelen." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:371 msgid "" "Remember to leave calibre running as the server only runs as long as calibre " "is running." @@ -8084,7 +9133,7 @@ msgstr "" "Denk er aan om calibre open te laten, aangezien de server alleen werkt " "zolang calibre draait" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:373 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 " @@ -8094,20 +9143,20 @@ msgstr "" "bibliotheek. myhostname is de volledige hostname of het IP address van de " "computer waar calibre op draait." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:449 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:450 msgid "Moving library..." msgstr "Verplaatsen bibliotheek..." -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:465 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:467 msgid "Failed to move library" msgstr "Bibliotheek kon niet worden verplaatst" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:521 msgid "Invalid database" msgstr "ongeldige database" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:521 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:522 msgid "" "

      An invalid library already exists at %s, delete it before trying to move " "the existing library.
      Error: %s" @@ -8115,11 +9164,11 @@ msgstr "" "

      Een ongeldige bibliotheek bestaat at in %s, verwijder deze alvorens " "nogmaals te proberen de bestaande bibliotheek te verplaatsen.
      Fout: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:533 msgid "Could not move library" msgstr "Bibliotheek kon niet worden verplaatst" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:661 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:662 msgid "welcome wizard" msgstr "Welkom Wizard" @@ -8156,13 +9205,6 @@ msgstr "&Fabricanten" msgid "&Devices" msgstr "A&pparaten" -#: /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:49 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 -msgid "WizardPage" -msgstr "Wizardpagina" - #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:48 msgid "" "

      Congratulations!

      You have successfully setup calibre. Press the %s " @@ -8376,44 +9418,50 @@ msgstr "" msgid "Turn on the &content server" msgstr "Schakel de &content server in" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:8 -msgid "Settings to control the calibre content server" -msgstr "Instellingen voor de calibre content server" - -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:12 -msgid "The port on which to listen. Default is %default" -msgstr "De poort waarop geluisterd word. Standaard is %default" - -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:14 -msgid "The server timeout in seconds. Default is %default" -msgstr "De server wachttijd in seconden. Standaard is %default" - -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:16 -msgid "The max number of worker threads to use. Default is %default" +#: /home/kovid/work/calibre/src/calibre/library/caches.py:230 +msgid "today" msgstr "" -"Het maximum aantal werk processen te gebruiken. Standaard is %default" -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:18 -msgid "Set a password to restrict access. By default access is unrestricted." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:233 +msgid "yesterday" msgstr "" -"Configureer een wachtwoord om toegang te beperken. Standaard is onbeperkte " -"toegang voor iedereen." -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:20 -msgid "Username for access. By default, it is: %default" -msgstr "Gebruikersnaam voor toegang. Standaard is %default" - -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:24 -msgid "The maximum size for displayed covers. Default is %default." -msgstr "De maximale grootte voor omslag afbeeldingein. Standaard is %default" - -#: /home/kovid/work/calibre/src/calibre/library/__init__.py:26 -msgid "" -"The maximum number of matches to return per OPDS query. This affects Stanza, " -"WordPlayer, etc. integration." +#: /home/kovid/work/calibre/src/calibre/library/caches.py:236 +msgid "thismonth" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:239 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:240 +msgid "daysago" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 +msgid "no" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:398 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:408 +msgid "unchecked" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 +msgid "checked" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:401 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:411 +msgid "yes" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 +msgid "blank" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/library/caches.py:405 +msgid "empty" msgstr "" -"Het maximum aantal resultaten dat zichtbaar is per OPDS zoekvraag. Dit " -"beinvloed Standa, WordPlayer, etc. integratie." #: /home/kovid/work/calibre/src/calibre/library/catalog.py:41 msgid "" @@ -8441,17 +9489,18 @@ msgstr "" "Standaard: '%default'\n" "Betrekking op: CSV, XML uitvoer formaten" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:262 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:202 msgid "" "Title of generated catalog used as title in metadata.\n" "Default: '%default'\n" "Applies to: ePub, MOBI output formats" msgstr "" -"Titel van gegenereerde catalogus gebruikt als titel in metadata.\n" +"De titel van de aangemaakte catalogus wordt ook gebruikt als titel in de " +"metagegevens.\n" "Standaard: '%default'\n" "Betrekking tot: ePub, MOBI uitvoer formaten" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:269 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:209 msgid "" "Save the output from different stages of the conversion pipeline to the " "specified directory. Useful if you are unsure at which stage of the " @@ -8465,7 +9514,7 @@ msgstr "" "Standaard: '%default'None\n" "Betrekking tot: ePub, MOBI uitvoer formaten" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:279 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:219 msgid "" "Regex describing tags to exclude as genres.\n" "Default: '%default' excludes bracketed tags, e.g. '[]'\n" @@ -8476,7 +9525,7 @@ msgstr "" "Standaard: '%default' uitgezonderd labels in haken, b.v. '[