From 71f61ac049f180c4afe3bd30ee4ac7888d357b6b Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 26 Apr 2013 10:05:22 +0530 Subject: [PATCH] IGN:Tag release --- src/calibre/translations/calibre.pot | 1288 +++++++++++++++----------- 1 file changed, 761 insertions(+), 527 deletions(-) diff --git a/src/calibre/translations/calibre.pot b/src/calibre/translations/calibre.pot index 10ad6998be..6264429558 100644 --- a/src/calibre/translations/calibre.pot +++ b/src/calibre/translations/calibre.pot @@ -4,9 +4,9 @@ # msgid "" msgstr "" -"Project-Id-Version: calibre 0.9.27\n" -"POT-Creation-Date: 2013-04-12 10:21+IST\n" -"PO-Revision-Date: 2013-04-12 10:21+IST\n" +"Project-Id-Version: calibre 0.9.28\n" +"POT-Creation-Date: 2013-04-26 09:23+IST\n" +"PO-Revision-Date: 2013-04-26 09:23+IST\n" "Last-Translator: Automatically generated\n" "Language-Team: LANGUAGE\n" "MIME-Version: 1.0\n" @@ -21,16 +21,16 @@ msgid "Does absolutely nothing" msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:59 -#: /home/kovid/work/calibre/src/calibre/db/backend.py:805 -#: /home/kovid/work/calibre/src/calibre/db/cache.py:134 -#: /home/kovid/work/calibre/src/calibre/db/cache.py:137 -#: /home/kovid/work/calibre/src/calibre/db/cache.py:148 -#: /home/kovid/work/calibre/src/calibre/db/cache.py:702 -#: /home/kovid/work/calibre/src/calibre/db/cache.py:703 +#: /home/kovid/work/calibre/src/calibre/db/backend.py:839 +#: /home/kovid/work/calibre/src/calibre/db/cache.py:147 +#: /home/kovid/work/calibre/src/calibre/db/cache.py:150 +#: /home/kovid/work/calibre/src/calibre/db/cache.py:161 +#: /home/kovid/work/calibre/src/calibre/db/cache.py:715 +#: /home/kovid/work/calibre/src/calibre/db/cache.py:716 #: /home/kovid/work/calibre/src/calibre/db/write.py:152 #: /home/kovid/work/calibre/src/calibre/db/write.py:156 -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:383 #: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:385 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:114 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:115 #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:74 @@ -121,7 +121,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer8/main.py:428 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:264 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:266 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:881 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:895 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator/spine.py:63 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/parse_utils.py:358 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/parse_utils.py:361 @@ -143,13 +143,13 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:449 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:702 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:721 #: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:125 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:144 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:146 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1416 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1419 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1423 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1426 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:79 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:136 @@ -171,20 +171,20 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:202 -#: /home/kovid/work/calibre/src/calibre/gui2/store/stores/google_books_plugin.py:108 +#: /home/kovid/work/calibre/src/calibre/gui2/store/stores/google_books_plugin.py:89 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:209 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:923 #: /home/kovid/work/calibre/src/calibre/library/cli.py:245 #: /home/kovid/work/calibre/src/calibre/library/database.py:914 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:553 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:561 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:572 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2273 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2426 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2876 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3525 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3527 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3665 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:573 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:581 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:592 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2293 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2446 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2896 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3545 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3547 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3685 #: /home/kovid/work/calibre/src/calibre/library/server/content.py:250 #: /home/kovid/work/calibre/src/calibre/library/server/content.py:251 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:247 @@ -891,8 +891,8 @@ msgstr "" msgid "Disable the named plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/db/backend.py:326 -#: /home/kovid/work/calibre/src/calibre/db/backend.py:335 +#: /home/kovid/work/calibre/src/calibre/db/backend.py:327 +#: /home/kovid/work/calibre/src/calibre/db/backend.py:336 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:749 @@ -902,11 +902,22 @@ msgstr "" msgid "Path to library too long. Must be less than %d characters." msgstr "" -#: /home/kovid/work/calibre/src/calibre/db/cache.py:162 +#: /home/kovid/work/calibre/src/calibre/db/backend.py:395 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:187 +msgid "restored preference " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/db/backend.py:401 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:192 +#: /home/kovid/work/calibre/src/calibre/library/restore.py:234 +msgid "creating custom column " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/db/cache.py:175 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:666 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:677 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1029 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1049 #: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:887 #: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:910 msgid "Yes" @@ -918,19 +929,19 @@ msgid "%(tt)sAverage rating is %(rating)3.1f" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/fields.py:237 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1186 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1206 msgid "Main" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/fields.py:239 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:77 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1188 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:76 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1208 msgid "Card A" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/fields.py:241 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:79 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1190 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:78 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1210 msgid "Card B" msgstr "" @@ -950,11 +961,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/utils.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:470 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1227 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1229 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:339 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:352 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1222 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1224 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:359 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:372 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3399 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:187 msgid "News" msgstr "" @@ -962,14 +973,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:32 #: /home/kovid/work/calibre/src/calibre/db/search.py:312 #: /home/kovid/work/calibre/src/calibre/library/caches.py:135 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:577 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:570 msgid "checked" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:32 #: /home/kovid/work/calibre/src/calibre/db/search.py:310 #: /home/kovid/work/calibre/src/calibre/library/caches.py:135 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:575 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:568 #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:229 msgid "yes" msgstr "" @@ -977,7 +988,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:34 #: /home/kovid/work/calibre/src/calibre/db/search.py:309 #: /home/kovid/work/calibre/src/calibre/library/caches.py:137 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:574 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:567 #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:229 msgid "no" msgstr "" @@ -985,45 +996,70 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:34 #: /home/kovid/work/calibre/src/calibre/db/search.py:311 #: /home/kovid/work/calibre/src/calibre/library/caches.py:137 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:576 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:569 msgid "unchecked" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:109 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:313 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:314 msgid "today" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:110 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:314 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:315 msgid "yesterday" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:111 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:315 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:316 msgid "thismonth" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:112 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:316 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:317 msgid "daysago" msgstr "" +#: /home/kovid/work/calibre/src/calibre/db/search.py:198 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:374 +msgid "Number conversion error: {0}" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/db/search.py:204 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:380 +msgid "Date conversion error: {0}" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/db/search.py:289 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:456 +msgid "Non-numeric value in query: {0}" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/db/search.py:313 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:578 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:571 msgid "empty" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:314 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:579 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:572 msgid "blank" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/search.py:323 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:591 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:584 msgid "Invalid boolean query \"{0}\"" msgstr "" +#: /home/kovid/work/calibre/src/calibre/db/search.py:355 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:501 +msgid "Invalid query format for colon-separated search: {0}" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/db/search.py:469 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:650 +msgid "Recursive query group detected: {0}" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/debug.py:75 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:47 msgid "Cause a running calibre instance, if any, to be shutdown. Note that if there are running jobs, they will be silently aborted, so use with care." @@ -1049,19 +1085,19 @@ msgstr "" msgid "Communicate with Android phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:204 msgid "Comma separated list of directories to send e-books to on the device's main memory. The first one that exists will be used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:206 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:207 msgid "Comma separated list of directories to send e-books to on the device's storage cards. The first one that exists will be used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:323 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:324 msgid "Communicate with S60 phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:342 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:343 msgid "Communicate with WebOS tablets." msgstr "" @@ -1162,8 +1198,8 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2827 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3336 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3354 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3356 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3374 msgid "Catalog" msgstr "" @@ -1207,10 +1243,10 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:130 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:133 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:350 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1338 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1342 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1346 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1716 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1354 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1358 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1362 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1732 #: /home/kovid/work/calibre/src/calibre/devices/prst1/driver.py:155 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:144 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:147 @@ -1251,6 +1287,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:442 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:474 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:617 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:2585 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:338 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:359 msgid "Removing books from device..." @@ -1552,32 +1589,32 @@ msgid "Normally, the KOBO readers get the cover image from the ebook file itself msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:76 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1227 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1233 msgid "Upload Black and White Covers" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:77 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1231 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1237 msgid "Show expired books" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:78 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1232 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1238 msgid "A bug in an earlier version left non kepubs book records in the database. With this option Calibre will show the expired records and allow you to delete them with the new delete logic." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:82 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1236 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1242 msgid "Show Previews" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:83 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1237 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1243 msgid "Kobo previews are included on the Touch and some other versions by default they are no longer displayed as there is no good reason to see them. Enable if you wish to see/delete them." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:86 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1240 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1246 msgid "Show Recommendations" msgstr "" @@ -1586,7 +1623,7 @@ msgid "Kobo now shows recommendations on the device. In some case these have fi msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:90 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1249 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1255 msgid "Attempt to support newer firmware" msgstr "" @@ -1595,10 +1632,12 @@ msgid "Kobo routinely updates the firmware and the database version. With this o msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:619 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:2587 msgid "Kobo database version unsupported - See details" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:620 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:2588 msgid "Your Kobo is running an updated firmware/database version. As calibre does not know about this updated firmware, database editing is disabled, to prevent corruption. You can still send books to your Kobo with calibre, but deleting books and managing collections is disabled. If you are willing to experiment and know how to reset your Kobo to Factory defaults, you can override this check by right clicking the device icon in calibre and selecting \"Configure this device\" and then the \"Attempt to support newer firmware\" option. Doing so may require you to perform a factory reset of your Kobo." msgstr "" @@ -1633,67 +1672,67 @@ msgstr "" msgid "Chapter %(chapter)d: %(chapter_title)s
%(typ)s
Chapter Progress: %(chapter_progress)s%%
Highlight: %(text)s
Notes: %(annotation)s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1218 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1224 msgid "The Kobo Touch from firmware V2.0.0 supports bookshelves." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1226 msgid "Specify a tags type column for automatic management" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1221 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1227 msgid "Create Bookshelves" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1222 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1228 msgid "Create new bookshelves on the Kobo Touch if they do not exist. This is only for firmware V2.0.0 or later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1223 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1229 msgid "Delete Empty Bookshelves" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1224 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1230 msgid "Delete any empty bookshelves from the Kobo Touch when syncing is finished. This is only for firmware V2.0.0 or later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1225 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1231 msgid "Upload covers for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1226 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1232 msgid "Upload cover images from the calibre library when sending books to the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1228 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1234 msgid "Keep cover aspect ratio" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1229 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1235 msgid "When uploading covers, do not change the aspect ratio when resizing for the device. This is for firmware versions 2.3.1 and later." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1241 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1247 msgid "Kobo shows recommendations on the device. In some cases these have files but in other cases they are just pointers to the web site to buy. Enable if you wish to see/delete them." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1244 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1250 msgid "Set Series information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1245 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1251 msgid "The book lists on the Kobo devices can display series information. This is not read by the device from the sideloaded books. Series information can only be added to the device after the book has been processed by the device. Enable if you wish to set series information." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1250 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1256 msgid "Kobo routinely updates the firmware and the database version. With this option Calibre will attempt to perform full read-write functionality - Here be Dragons!! Enable only if you are comfortable with restoring your kobo to factory defaults and testing software. This driver supports firmware V2.x.x and DBVersion up to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1256 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1262 msgid "Title to test when debugging" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1257 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:1263 msgid "Part of title of a book that can be used when doing some tests for debugging. The test is to see if the string is contained in the title of a book. The better the match, the less extraneous output." msgstr "" @@ -1710,55 +1749,55 @@ msgid "Communicate with the Sweex/Kogan/Q600/Wink" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/misc.py:81 -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:108 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:107 msgid "Communicate with the Pandigital Novel" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:127 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:126 msgid "Communicate with the VelocityMicro" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:145 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:144 msgid "Communicate with the GM2000" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:165 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:164 msgid "Communicate with the Acer Lumiread" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:199 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:198 msgid "Communicate with the Aluratek Color" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:219 msgid "Communicate with the Trekstor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:247 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:246 msgid "Communicate with the EEE Reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:268 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:267 msgid "Communicate with the Adam tablet" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:289 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:288 msgid "Communicate with the Nextbook Reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:340 msgid "Communicate with the Moovybook Reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:363 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:362 msgid "Communicate with the COBY" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:389 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:388 msgid "Communicate with the Ex124G" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/misc.py:416 +#: /home/kovid/work/calibre/src/calibre/devices/misc.py:415 msgid "Communicate with the WayteQ and SPC Dickens Readers" msgstr "" @@ -2521,19 +2560,19 @@ msgstr "" 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 the conversion pipeline." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:21 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:24 msgid "CSS file used for the output instead of the default file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:24 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:27 msgid "Template used for generation of the html index file instead of the default file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:27 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:30 msgid "Template used for the generation of the html contents of the book instead of the default file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:30 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plugins/html_output.py:33 msgid "Extract the contents of the generated ZIP file to the specified directory. WARNING: The contents of the directory will be deleted." msgstr "" @@ -3499,7 +3538,7 @@ msgstr "" msgid "Set book ID" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:42 msgid "Extract common e-book formats from archives (zip/rar) files. Also try to autodetect if they are actually cbz/cbr files." msgstr "" @@ -3580,10 +3619,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:130 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:70 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:161 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:125 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:981 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:1227 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:201 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:807 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:801 msgid "Tags" msgstr "" @@ -3595,6 +3635,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:131 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:70 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:163 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:126 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:306 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:2304 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:140 @@ -3718,8 +3759,8 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1489 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1284 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/cover.py:181 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1298 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/cover.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:994 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:39 msgid "Cover" @@ -3894,12 +3935,12 @@ msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/tweak.py:46 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:623 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:624 msgid "This is not a MOBI file. It is a Topaz file." msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/tweak.py:51 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:628 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:629 msgid "This is not a MOBI file." msgstr "" @@ -3920,72 +3961,72 @@ msgid "No details available" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer8/toc.py:15 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1286 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1300 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/toc.py:373 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:357 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:221 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/toc.py:219 msgid "Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1285 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1299 msgid "Title Page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1287 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1301 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1288 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1302 msgid "Glossary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1289 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1303 msgid "Acknowledgements" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1290 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1304 msgid "Bibliography" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1291 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1305 msgid "Colophon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1292 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1306 msgid "Copyright" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1293 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1307 msgid "Dedication" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1294 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1308 msgid "Epigraph" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1295 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1309 msgid "Foreword" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1296 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1310 msgid "List of Illustrations" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1297 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1311 msgid "List of Tables" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1298 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1312 msgid "Notes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1299 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1313 msgid "Preface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1300 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1314 msgid "Main Text" msgstr "" @@ -3994,11 +4035,11 @@ msgstr "" msgid "%s format books are not supported" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:636 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:637 msgid "This MOBI file does not contain a KF8 format book. KF8 is the new format from Amazon. calibre can only edit MOBI files that contain KF8 books. Older MOBI files without KF8 are not editable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:642 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/container.py:643 msgid "This MOBI file contains both KF8 and older Mobi6 data. calibre can only edit MOBI files that contain only KF8 data." msgstr "" @@ -4023,7 +4064,7 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/main.py:48 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:437 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:446 #: /home/kovid/work/calibre/src/calibre/gui2/actions/toc_edit.py:105 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:199 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:132 @@ -4176,9 +4217,9 @@ msgid "The anchor %(a)s does not exist in file %(f)s" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/polish/toc.py:199 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:234 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:669 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:684 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:679 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:694 msgid "(Untitled)" msgstr "" @@ -4198,7 +4239,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:160 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:805 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:799 msgid "Rating" msgstr "" @@ -4385,7 +4426,7 @@ msgid "Show this confirmation again" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:133 msgid "Restart needed" msgstr "" @@ -4503,12 +4544,12 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:132 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:238 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:103 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:219 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:288 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:328 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:417 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:426 #: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:83 #: /home/kovid/work/calibre/src/calibre/gui2/actions/toc_edit.py:114 #: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:271 @@ -4744,7 +4785,7 @@ msgid "No existing calibre library found at %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:154 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:160 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:168 msgid "Choose Library" msgstr "" @@ -4758,7 +4799,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:162 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:59 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:172 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:169 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:129 #, python-format msgid "%d books" @@ -4770,12 +4811,12 @@ msgid "Pick a random book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:181 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:92 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:91 msgid "Quick switch" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:183 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:92 msgid "Rename library" msgstr "" @@ -4902,7 +4943,7 @@ msgid "Found no errors in your calibre library database. Do you want calibre to msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:267 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:975 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1017 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:114 @@ -4930,7 +4971,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:538 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:543 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:284 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:294 #: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:1021 msgid "Not allowed" @@ -4969,7 +5010,7 @@ msgid "Create a catalog of the books in your calibre library" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:131 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:639 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:647 msgid "Cannot convert" msgstr "" @@ -4982,93 +5023,106 @@ msgstr "" msgid "Empty output file, probably the conversion process crashed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:87 #, python-format msgid "%(title)s by %(author)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:138 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:60 msgid "Choose library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:139 msgid "Library &path:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:147 msgid "Browse for library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:149 -msgid "&Delete after copy" +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:154 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:205 +msgid "&Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:156 +msgid "Copy to the specified library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:157 +msgid "&Move" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:160 +msgid "Copy to the specified library and delete from the current library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:180 msgid "Copy to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:181 msgid "Copy selected books to the specified library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:214 msgid "(delete after copy)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:218 msgid "Choose library by path..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:220 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:237 msgid "Cannot copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:221 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:231 msgid "Cannot copy to current library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:232 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:242 msgid "No library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:233 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:243 #, python-format msgid "No library found at %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:245 msgid "Copying to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:245 msgid "Moving to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:261 #, python-format msgid "Copied %(num)d books to %(loc)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:263 #, python-format msgid "Moved %(num)d books to %(loc)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:267 msgid "Could not copy books: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:264 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:274 msgid "Auto merged" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:265 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:275 msgid "Some books were automatically merged into existing records in the target library. Click Show details to see which ones. This behavior is controlled by the Auto merge option in Preferences->Adding books." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:285 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:295 msgid "You cannot use other libraries while using the environment variable CALIBRE_OVERRIDE_DATABASE_PATH." msgstr "" @@ -5085,6 +5139,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:104 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:450 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:242 msgid "Are you sure?" msgstr "" @@ -5286,12 +5341,12 @@ msgid "Share books using a web server or email. Connect to special devices, etc. msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:220 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:84 msgid "Stopping" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:221 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85 msgid "Stopping server, this could take upto a minute, please wait..." msgstr "" @@ -5373,8 +5428,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/dnd.py:84 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:882 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:532 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:898 msgid "Download failed" msgstr "" @@ -5406,7 +5461,7 @@ msgid "Download complete" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:945 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:961 msgid "Download log" msgstr "" @@ -5660,7 +5715,7 @@ msgid "Select &none" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:217 msgid "No actions selected" msgstr "" @@ -5683,81 +5738,89 @@ msgstr "" msgid "Remove saved settings" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:208 +msgid "Must update metadata" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:209 +msgid "You have selected the option to add metadata as a \"book jacket\". For this option to work, you must also select the option to update metadata in the book files. Do you want to select it?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:218 msgid "You must select at least one action, or click Cancel." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:232 msgid "Queueing books for polishing" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:267 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:276 #, python-format msgid "Polish %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:277 #, python-format msgid "Polish book %(nums)s of %(tot)s (%(title)s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:281 #, python-format msgid "Queueing book %(nums)s of %(tot)s (%(title)s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:307 #, python-format msgid "Ignore remaining %d reports" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:314 msgid "View full &log" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:337 #, python-format msgid "Polishing of %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:343 #, python-format msgid "The original file has been saved as %s." msgid_plural "The original files have been saved as %s." msgstr[0] "" msgstr[1] "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:345 msgid " and " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:348 msgid "If you polish again, the polishing will run on the originals." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:374 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:383 msgid "Polish books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:384 msgid "Apply the shine of perfection to your books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:384 msgid "P" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:416 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:443 msgid "Cannot polish" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:435 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:444 #, python-format msgid "Polishing is only supported for books in the %s formats. Convert to one of those formats before polishing." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:463 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/polish.py:472 #, python-format msgid "Start polishing of %d book(s)" msgstr "" @@ -5871,7 +5934,7 @@ msgid "Click the show details button to see which ones." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:812 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:806 msgid "Show book details" msgstr "" @@ -5976,7 +6039,7 @@ msgid "this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:494 #, python-format msgid "Search for %s" msgstr "" @@ -6262,7 +6325,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:283 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1137 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1144 msgid "No books" msgstr "" @@ -6458,7 +6521,7 @@ msgid "Click to open" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:180 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:867 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:861 msgid "Ids" msgstr "" @@ -6502,17 +6565,21 @@ msgstr "" msgid "Cover size: %(width)d x %(height)d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:487 +msgid "&Copy Link" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:502 #, python-format msgid "Delete the %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:486 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:503 #, python-format msgid "Save the %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:487 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:504 #, python-format msgid "Restore the %s format" msgstr "" @@ -6769,7 +6836,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:342 #: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:90 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:262 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:259 msgid "Name" msgstr "" @@ -7099,8 +7166,8 @@ msgid "Style the selected text block" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165 msgid "Normal" msgstr "" @@ -8277,6 +8344,10 @@ msgstr "" msgid "

Search and replace uses regular expressions. See the regular expressions tutorial to get started with regular expressions. Also clicking the wizard button below will allow you to test your regular expression against the current input document. When you are happy with an expression, click the Add button to add it to the list of expressions." msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:150 +msgid "Restore &Defaults" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:193 msgid "Convert" msgstr "" @@ -8820,7 +8891,7 @@ msgid "Detected the %s. Do you want calibre to manage it?" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device.py:884 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1466 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1473 #: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 msgid "No suitable formats" msgstr "" @@ -8864,78 +8935,78 @@ msgstr "" msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1145 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1145 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1175 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1152 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1182 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1146 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1153 msgid "No device connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1162 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1169 #, python-format msgid "%(num)i of %(total)i Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1173 #, python-format msgid "0 of %i Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1174 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1176 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1183 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1179 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1183 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1190 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1180 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1184 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1187 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1191 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1245 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1328 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1252 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1467 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1274 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1281 msgid "Sending catalogs to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1380 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1427 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1434 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1467 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1474 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:1540 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1547 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1541 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1548 msgid "

Cannot upload books to device there is no more free space available " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1553 msgid "Incorrect destination" msgstr "" @@ -9087,7 +9158,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/mtp_config.py:421 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:938 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:954 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:344 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:227 msgid "Copy to clipboard" @@ -9558,13 +9629,13 @@ msgid "Where do you want to delete from?" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:236 msgid "Library" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74 msgid "Device" msgstr "" @@ -9616,13 +9687,13 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/device_category_editor.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:209 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:959 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:954 msgid "Item is blank" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/device_category_editor.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:210 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:960 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:955 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9714,7 +9785,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122 #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:541 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:753 msgid "No matches found" msgstr "" @@ -9762,12 +9833,12 @@ msgid "Copy to author" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:313 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1009 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1004 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:314 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1010 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1005 msgid "Author names cannot contain & characters." msgstr "" @@ -9893,8 +9964,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:196 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:251 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1003 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1019 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1128 #: /home/kovid/work/calibre/src/calibre/gui2/proceed.py:49 msgid "View log" msgstr "" @@ -10708,6 +10779,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/quickview.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:125 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:302 #: /home/kovid/work/calibre/src/calibre/library/catalogs/epub_mobi_builder.py:1417 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:113 @@ -10740,12 +10812,12 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/quickview_ui.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/font_family_chooser.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:95 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:287 #: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:80 #: /home/kovid/work/calibre/src/calibre/gui2/store/stores/mobileread/store_dialog_ui.py:76 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:652 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:286 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:283 msgid "Search" msgstr "" @@ -11269,12 +11341,12 @@ msgid "The port must be a number between 8000 and 32000." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/smartdevice.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:394 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:392 msgid "Problem starting the wireless device" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/smartdevice.py:146 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:393 #, python-format msgid "The wireless device driver did not start. It said \"%s\"" msgstr "" @@ -11323,6 +11395,7 @@ msgid "&Automatically allow connections at calibre startup" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:126 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:164 msgid "Publishers" msgstr "" @@ -11337,6 +11410,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:191 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:256 msgid "Invalid name" msgstr "" @@ -12186,7 +12260,7 @@ msgid "&Shortcut:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:169 msgid "Done" msgstr "" @@ -12239,64 +12313,68 @@ msgstr "" msgid "Could not find any shortcuts matching %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57 msgid "Eject this device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:60 msgid "Configure this device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73 msgid "Show books in calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:76 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75 msgid "Show books in the main memory of the device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:78 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:77 msgid "Show books in storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:79 msgid "Show books in storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:93 msgid "Delete library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:147 msgid "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:192 -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:176 +msgid "Virtual Library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:193 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:198 msgid "Advanced search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:193 msgid "Shift+Ctrl+F" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203 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:209 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:210 msgid "&Go!" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:216 msgid "Do Quick Search (you can also press the Enter key)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:221 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:222 msgid "Reset Quick Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:238 msgid "Copy current search text (instead of search name)" msgstr "" @@ -12325,7 +12403,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:900 #: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1537 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:332 msgid "The lookup/search name is \"{0}\"" msgstr "" @@ -12467,7 +12545,7 @@ msgid "Previous Page" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:133 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1016 #: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:62 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:215 msgid "Back" @@ -12936,7 +13014,7 @@ msgid "Edit Metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:993 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1009 #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:108 #: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:219 #: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:410 @@ -13080,7 +13158,7 @@ msgstr "" msgid "Has summary" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:205 msgid "" "The has cover indication is not fully\n" "reliable. Sometimes results marked as not\n" @@ -13088,62 +13166,66 @@ msgid "" "cover stage, and vice versa." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:299 msgid "See at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:461 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:460 msgid "calibre is downloading metadata from: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:482 msgid "Please wait" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:515 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:514 msgid "Query: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:533 msgid "Failed to download metadata. Click Show Details to see details" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:542 msgid "Failed to find any books that match your search. Try making the search less specific. For example, use only the author's last name and a single distinctive word from the title.

To see the full log, click Show Details." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:651 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:650 msgid "Current cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:653 msgid "Searching..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:822 +msgid "View this cover at full size" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:868 #, python-format msgid "Downloading covers for %s, please wait..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:883 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:899 msgid "Failed to download any covers, click \"Show details\" for details." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:905 #, python-format msgid "Could not find any covers for %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:891 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:907 #, python-format msgid "Found %(num)d possible covers for %(title)s. When the download completes, the covers will be sorted by size." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:981 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:997 msgid "Downloading metadata..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1096 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:1112 msgid "Downloading cover..." msgstr "" @@ -13259,7 +13341,7 @@ msgid "The Add &Process" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:161 -msgid "Ignore files with the following extensions when automatically adding " +msgid "Ignore files with the following extensions when automatically adding " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:162 @@ -13298,34 +13380,34 @@ msgstr "" msgid "&Automatic Adding" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:33 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:166 msgid "High" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:33 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:167 msgid "Low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35 msgid "Very low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:67 msgid "Compact Metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:67 msgid "Default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:68 msgid "All on 1 tab" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:170 msgid "Confirmation dialogs have all been reset" msgstr "" @@ -13372,11 +13454,11 @@ msgid "Job &priority:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:168 -msgid "Restriction to apply when the current library is opened:" +msgid "Virtual library to apply when the current library is opened:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:169 -msgid "Apply this restriction on calibre startup if the current library is being used. Also applied when switching to this library. Note that this setting is per library. " +msgid "Use this virtual library on calibre startup if the current library is being used. Also applied when switching to this library. Note that this setting is per library. " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:170 @@ -14221,7 +14303,7 @@ msgid "Never" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:153 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:590 msgid "By first letter" msgstr "" @@ -15093,20 +15175,20 @@ msgstr "" 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->Advanced->Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:74 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:479 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:477 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:112 msgid "Error log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:119 msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:134 msgid "You need to restart the server for changes to take effect" msgstr "" @@ -15135,15 +15217,15 @@ msgid "Max. &OPDS items per query:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:157 -msgid "Max. OPDS &ungrouped items:" +msgid "Max. &ungrouped items:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:158 -msgid "Restriction (saved search) to apply:" +msgid "Virtual library to apply:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:159 -msgid "This restriction (based on a saved search) will restrict the books the content server makes available to those matching the search. This setting is per library (i.e. you can have a different restriction per library)." +msgid "Setting a virtual library will restrict the books the content server makes available to those in the library. This setting is per library (i.e. you can have a different value per library)." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:160 @@ -15476,80 +15558,216 @@ msgstr "" msgid "Apply any changes you made to this tweak" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:348 -msgid "Delete current search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:349 -msgid "No search is selected" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:351 -msgid "The selected search will be permanently deleted. Are you sure?" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:376 -msgid "Search (For Advanced Search click the button to the left)" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 -msgid "Start search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:402 -msgid "Enable or disable search highlighting." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:457 -msgid "Saved Searches" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:459 -msgid "Choose saved search or enter name for new saved search" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:465 -msgid "Save current search under the name shown in the box. Press and hold for a pop-up options menu." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:473 msgid "Create saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:474 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:336 +msgid "There is no search to save" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:351 +msgid "Delete current search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:352 +msgid "No search is selected" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:354 +msgid "The selected search will be permanently deleted. Are you sure?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:379 +msgid "Search (For Advanced Search click the button to the left)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:395 +msgid "Start search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:405 +msgid "Enable or disable search highlighting." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:126 +msgid "Saved Searches" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:462 +msgid "Choose saved search or enter name for new saved search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:468 +msgid "Save current search under the name shown in the box. Press and hold for a pop-up options menu." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:477 msgid "Delete saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:478 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:481 msgid "Manage saved searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:488 -msgid "*Current search" +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:26 +#, python-format +msgid "Create a Virtual Library based on %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:12 -msgid "Restrict to" +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:34 +#, python-format +msgid "Match all selected %s names" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:19 -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:92 +msgid "Edit virtual library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:94 +msgid "Create virtual library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:99 +msgid "Virtual library &name:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:112 +msgid "&Search expression:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:120 +msgid "Create a virtual library based on: " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:133 +msgid "" +"\n" +"

Virtual Libraries

\n" +"\n" +"

Using virtual libraries you can restrict calibre to only show\n" +" you books that match a search. When a virtual library is in effect, calibre\n" +" behaves as though the library contains only the matched books. The Tag Browser\n" +" display only the tags/authors/series/etc. that belong to the matched books and any searches\n" +" you do will only search within the books in the virtual library. This\n" +" is a good way to partition your large library into smaller and easier to work with subsets.

\n" +"\n" +"

For example you can use a Virtual Library to only show you books with the Tag \"Unread\"\n" +" or only books by \"My Favorite Author\" or only books in a particular series.

\n" +" " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:172 +msgid "Saved searches recognized in the expression:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:212 +msgid "Search text changed" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:213 +msgid "The virtual library name or the search text has changed. Do you want to discard these changes?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:250 +msgid "No name" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:251 +msgid "You must provide a name for the new virtual library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:257 +msgid "A virtual library name cannot begin with \"*\"" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:262 +msgid "Name already in use" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:263 +msgid "That name is already in use. Do you want to replace it with the new search?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:270 +msgid "No search string" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:271 +msgid "You must provide a search to define the new virtual library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:410 +msgid "Invalid search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:280 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:411 +msgid "The search in the search box is not valid" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:285 +msgid "Search found no books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:286 +msgid "The search found no books, so the virtual library will be empty. Do you really want to use that search?" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:298 +msgid "" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:311 +msgid "Use a \"virtual library\" to show only a subset of the books present in this library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:574 msgid "(all books)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:21 -msgid "Books display will be restricted to those matching a selected saved search" +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:317 +msgid "Additional restriction" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:54 -msgid " or the search " +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:318 +msgid "Edit Virtual Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:319 +msgid "Remove Virtual Library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:342 +msgid "Create Virtual Library" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:494 +msgid "*current search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:402 +msgid "No search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:403 +msgid "There is no current search to use" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:451 +msgid "Are you sure you want to remove the virtual library {0}" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:569 msgid "({0} of {1})" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:576 msgid "({0} of all)" msgstr "" @@ -15935,44 +16153,44 @@ msgstr "" msgid "%p%" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:327 msgid "The grouped search term name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:796 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:791 msgid "Changing the authors for several books can take a while. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:801 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:796 msgid "Changing the metadata for that many books can take a while. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:888 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:461 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:883 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:481 msgid "Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:965 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:985 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:994 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:960 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:989 msgid "Rename user category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:966 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:961 msgid "You cannot use periods in the name when renaming user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:986 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:981 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:990 #, python-format msgid "The name %s is already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1014 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1009 msgid "Duplicate search name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1015 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1010 #, python-format msgid "The saved search name %s is already used." msgstr "" @@ -15994,13 +16212,13 @@ msgid "Manage Tags" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:572 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:576 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:580 msgid "Manage User Categories" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:558 msgid "Manage Saved Searches" msgstr "" @@ -16093,7 +16311,7 @@ msgid "Alter Tag Browser" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/ui.py:399 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:281 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:278 msgid "Sort by" msgstr "" @@ -16129,189 +16347,189 @@ msgstr "" msgid "All of these category_managers are available by right-clicking on items in the tag browser above" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:304 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:300 #, python-format msgid "Change Icon for: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:442 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:481 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:511 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:438 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:477 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:507 #, python-format msgid "Rename %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:448 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:444 #, python-format msgid "Delete %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:452 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:448 #, python-format msgid "Edit sort for %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:455 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:451 #, python-format msgid "Edit link for %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:462 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:458 #, python-format msgid "Add %s to user category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:475 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:471 #, python-format msgid "Children of %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:481 #, python-format msgid "Delete search %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:486 #, python-format msgid "Remove %(item)s from category %(cat)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:499 #, python-format msgid "Search for everything but %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:515 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:511 #, python-format msgid "Add sub-category to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:519 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:515 #, python-format msgid "Delete user category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:520 #, python-format msgid "Hide category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:524 msgid "Show category" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:534 #, python-format msgid "Search for books in category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:540 #, python-format msgid "Search for books not in category %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:554 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:555 #, python-format msgid "Manage %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:563 msgid "Change category icon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:565 msgid "Restore default icon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:583 msgid "Show all categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:587 msgid "Change sub-categorization scheme" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:588 msgid "Disable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:592 msgid "Partition" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/view.py:607 msgid "First letter is usable only when sorting by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:113 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:112 msgid "Select a destination for the Table of Contents entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:134 msgid "Search for text..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:136 msgid "Find &next" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:139 msgid "Find &previous" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:151 msgid "Here you can choose a destination for the Table of Contents' entry to point to. First choose a file from the book in the left-most panel. The file will open in the central panel.

Then choose a location inside the file. To do so, simply click on the place in the central panel that you want to use as the destination. As you move the mouse around the central panel, a thick green line appears, indicating the precise location that will be selected when you click." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:164 msgid "&Name of the ToC entry:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:162 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:170 msgid "Currently selected destination:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:208 msgid "No match found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:186 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:198 #, python-format msgid "No match found for: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:204 #, python-format msgid "No matches for %(text)s found in the current file [%(current)s]. Do you want to search in the %(which)s file [%(next)s]?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:207 msgid "next" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:207 msgid "previous" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:223 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:281 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:298 msgid "File:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:283 msgid "Top of the file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:285 #, python-format msgid "Approximately %d%% from the top" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/location.py:290 #, python-format msgid "Location: A <%s> tag inside the file" msgstr "" @@ -16410,176 +16628,180 @@ msgstr "" msgid "Flatten the Table of Contents, putting all entries at the top level" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:212 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:211 msgid "WARNING: calibre only supports the creation of linear ToCs in AZW3 files. In a linear ToC every entry must point to a location after the previous entry. If you create a non-linear ToC it will be automatically re-arranged inside the AZW3 file." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:227 msgid "You can move this entry around the Table of Contents by drag and drop or using the up and down buttons to the left" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:249 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:248 msgid "Change the &location this entry points to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:252 msgid "&Remove this entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:262 msgid "New entry &inside this entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:265 msgid "New entry &above this entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:269 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:268 msgid "New entry &below this entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:272 msgid "&Flatten this entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:275 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:274 msgid "All children of this entry are brought to the same level as this entry." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:286 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:285 msgid "&Return to welcome screen" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:287 msgid "Go back to the top level view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:338 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:337 msgid "This entry points to an existing destination" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:340 msgid "The location this entry points to does not exist" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:519 -#, python-format -msgid "Move \"%s\" up" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:521 -#, python-format -msgid "Move \"%s\" down" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:522 -msgid "Remove all selected items" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:524 #, python-format -msgid "Unindent \"%s\"" +msgid "Move \"%s\" up" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:526 #, python-format -msgid "Indent \"%s\"" +msgid "Move \"%s\" down" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:527 +msgid "Remove all selected items" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:529 +#, python-format +msgid "Unindent \"%s\"" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:531 +#, python-format +msgid "Indent \"%s\"" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:532 +msgid "Change the location this entry points to" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:533 msgid "Change all selected items to title case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:545 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:552 msgid "Move current entry up [Ctrl+Up]" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:559 msgid "Unindent the current entry [Ctrl+Left]" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:566 msgid "Remove all selected entries" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:573 msgid "Indent the current entry [Ctrl+Right]" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:580 msgid "Move current entry down [Ctrl+Down]" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:575 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:582 msgid "&Expand all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:586 msgid "&Collapse all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:582 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:589 msgid "Double click on an entry to change the text" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:660 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:670 msgid "Title: {0} Dest: {1}{2}" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:691 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:701 #, python-format msgid "" "The location this entry point to does not exist:\n" "%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:781 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:788 -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:795 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:791 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:798 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:805 msgid "No items found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:782 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:792 msgid "No items were found that could be added to the Table of Contents." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:789 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:799 msgid "No links were found that could be added to the Table of Contents." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:796 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:806 msgid "No files were found that could be added to the Table of Contents." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:824 #, python-format msgid "Edit the ToC in %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:830 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:840 #, python-format msgid "Loading %s, please wait..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:865 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:876 #, python-format msgid "Writing %s, please wait..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:884 msgid "Failed to write book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:874 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:885 #, python-format msgid "Could not write %s. Click \"Show details\" for more information." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:911 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:923 msgid "Failed to load book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/toc/main.py:924 #, python-format msgid "Could not load %s. Click \"Show details\" for more information." msgstr "" @@ -16648,40 +16870,40 @@ msgstr "" msgid "The following books have already been converted to %s format. Do you wish to reconvert them?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:206 msgid "&Donate to support calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:243 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:242 msgid "&Restore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:248 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:247 msgid "&Eject connected device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:252 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:251 msgid "Quit calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:265 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:264 msgid "Clear the current search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:368 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:371 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:369 #, python-format msgid "You have started calibre in debug mode. After you quit calibre, the debug log will be available in the file: %s

The log will be displayed automatically." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:411 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:409 msgid "Failed to start Content Server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:410 #, python-format msgid "" "Could not start the content server. Error:\n" @@ -16694,16 +16916,16 @@ msgstr "" msgid "The library database at %s appears to be corrupted. Do you want calibre to try and rebuild it automatically? The rebuild may not be completely successful." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:627 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:635 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:656 #, python-format msgid "

Failed to convert: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:649 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:657 msgid "" "\n" " Many older ebook reader devices are incapable of displaying\n" @@ -16720,34 +16942,34 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:663 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671 msgid "Conversion Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:675 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:683 msgid "Recipe Disabled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:708 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:716 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:740 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:748 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:743 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:751 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:747 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:755 msgid "Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:818 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:823 msgid "will keep running in the system tray. To close it, choose Quit in the context menu of the system tray." msgstr "" @@ -17266,29 +17488,29 @@ msgstr "" msgid "S&earch Google for '%s'" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:38 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:28 msgid "Zoom &in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:39 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/table_popup.py:29 msgid "Zoom &out" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:40 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 msgid "&Save as" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:42 msgid "&Rotate" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:68 msgid "Choose a file to save to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:100 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/image_popup.py:104 #, python-format msgid "View Image: %s" msgstr "" @@ -18980,31 +19202,22 @@ msgstr "" msgid "The label must contain only lower case letters, digits and underscores, and start with a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:187 -msgid "restored preference " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/library/database2.py:192 -#: /home/kovid/work/calibre/src/calibre/library/restore.py:234 -msgid "creating custom column " -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1191 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1211 #, python-format msgid " (%s books)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3691 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3711 #, python-format msgid "

Migrating old database to ebook library in %s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3720 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3740 #, python-format msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3737 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3757 msgid "Compacting database" msgstr "" @@ -19212,20 +19425,20 @@ msgid "Prefix to prepend to all URLs. Useful for reverseproxying to this server msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/ajax.py:318 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:355 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:652 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:352 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:646 msgid "All books" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/ajax.py:319 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:354 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:651 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:351 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:645 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:584 msgid "Newest" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:65 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:521 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:516 msgid "Loading, please wait" msgstr "" @@ -19248,7 +19461,7 @@ msgid "Browsing %d books" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:127 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:261 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:258 msgid "Average rating" msgstr "" @@ -19257,94 +19470,94 @@ msgstr "" msgid "%(prefix)s: %(rating).1f stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:165 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:162 #, python-format msgid "%d stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:262 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:259 msgid "Popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:284 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:281 msgid "library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:285 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:282 msgid "home" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:356 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:353 msgid "Random book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:406 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:475 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:403 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:472 msgid "Browse books by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:411 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:408 msgid "Choose a category to browse by:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:546 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:541 msgid "Browsing by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:547 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:542 msgid "Up" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:687 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:681 msgid "in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:690 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:684 msgid "Books in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:785 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:779 msgid "Other formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:792 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:786 #, python-format msgid "Read %(title)s in the %(fmt)s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:797 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:791 msgid "Get" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:811 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:805 msgid "Details" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:813 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:807 msgid "Permalink" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:814 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:808 msgid "A permanent link to this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:826 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:820 msgid "This book has been deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:894 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:888 msgid "Choose another random book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:895 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:889 msgid "Another random book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:946 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:940 msgid "in search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:948 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:942 msgid "Matching books" msgstr "" @@ -19370,10 +19583,10 @@ msgid "Write process PID to the specified file" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server/main.py:59 -msgid "Specifies a restriction to be used for this invocation. This option overrides any per-library settings specified in the GUI" +msgid "Specifies a virtual library to be used for this invocation. This option overrides any per-library settings specified in the GUI. For compatibility, if the value is not a virtual library but is a saved search, that saved search is used." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/server/main.py:63 +#: /home/kovid/work/calibre/src/calibre/library/server/main.py:64 msgid "Auto reload server when source code changes. May not work in all environments." msgstr "" @@ -20111,10 +20324,6 @@ msgstr "" msgid "pm" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:205 -msgid "&Copy" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/utils/localization.py:206 msgid "Select All" msgstr "" @@ -20211,6 +20420,31 @@ msgstr "" msgid "Restart console" msgstr "" +#: /home/kovid/work/calibre/src/calibre/utils/search_query_parser.py:174 +msgid "Extra characters at end of search" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/search_query_parser.py:208 +msgid "missing )" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/search_query_parser.py:211 +msgid "Invalid syntax. Expected a lookup name or a word" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/search_query_parser.py:314 +#, python-format +msgid "Failed to parse query, recursion limit reached: %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/search_query_parser.py:358 +msgid "Recursive saved search: {0}" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/search_query_parser.py:367 +msgid "Unknown error in saved search: {0}" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/sftp.py:53 msgid "URL must have the scheme sftp" msgstr ""