diff --git a/.bzrignore b/.bzrignore
index a071a4f2f6..aa6637bc7a 100644
--- a/.bzrignore
+++ b/.bzrignore
@@ -30,3 +30,4 @@ nbproject/
.project
.pydevproject
.settings/
+*.DS_Store
diff --git a/Changelog.yaml b/Changelog.yaml
index 307836e5ab..cc4947fbbf 100644
--- a/Changelog.yaml
+++ b/Changelog.yaml
@@ -19,6 +19,90 @@
# new recipes:
# - title:
+- version: 0.8.1
+ date: 2011-05-13
+
+ new features:
+ - title: "Add Amazon DE, Beam EBooks, Beam DE, Weightless Books, Wizards Tower Books to the list of ebook stores searched by Get Books"
+
+ - title: "TXT output: All new Textile output with much greater preservation of formatting from the input document"
+
+ - title: "Migrate metadata plugin for Douban Books to the 0.8 API"
+
+ - title: "Driver for Dell Streak on windows"
+
+ - title: "Add menu items to Get Books action to search by title and author of current book"
+
+ - title: "Add title_sort as available field to CSV/XML catalogs"
+
+ - title: "Add a context menu to the manage authors dialog"
+
+ - title: "Add a button to paste isbn into the identifiers field in the edit metadata dialog automatically"
+
+ bug fixes:
+ - title: "Amazon metadata download plugin: Fix links being stripped from comments. Also fix ratings/isbn not being parsed from kindle edition pages."
+ tickets: [782012]
+
+ - title: "Fix one source of segfaults on shutdown in the linux binary builds."
+
+ - title: "Allow the use of condensed/expanded fonts as interface fonts"
+
+ - title: "EPUB Input: Ignore missing cover file when converting, instead of erroring out."
+ tickets: [781848]
+
+ - title: "Fix custom identifier being erased by metadata download"
+ tickets: [781759]
+
+ - title: "Fix regression that broke various things when using Japanese language calibre on windows"
+ tickets: [780804]
+
+ - title: "RTF Input: Handle null color codes correctly"
+ tickets: [780728]
+
+ - title: "ODT Input: Handle inline special styles defined on W.* lektury.*
]*>
', lambda match: ''), + (r''+
- _('All files from ' +
+ _('Automatically create the author sort entry based on the current '
+ 'author entry. Using this button to create author sort will '
+ 'change author sort from red to green. There is a menu of '
+ 'functions available under this button. Click and hold '
+ 'on the button to see it.') + ' ' + _(
+ 'Manage authors. Use to rename authors and correct '
+ 'individual author\'s sort values') + ' ' +
+ _('Paste the contents of the clipboard into the '
+ 'identifiers box prefixed with isbn:') + ' There was an error reading from file: Cannot upload books to device there is no more free space available "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:135
msgid "Unknown formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:136
msgid ""
"You have enabled the {0} formats for your {1}. The {1} may not "
"support them. If you send these formats to your {1} they may not work. Are "
"you sure?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:148
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:409
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:274
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:138
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:410
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:275
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
@@ -7748,13 +7487,13 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:97
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:211
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:73
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:189
msgid "&Title:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:157
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:167
msgid "&Author(s):"
msgstr ""
@@ -7769,7 +7508,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:65
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:233
msgid "&Cancel"
msgstr ""
@@ -7784,13 +7523,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:63
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
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:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
msgid "Device"
msgstr ""
@@ -7844,138 +7583,71 @@ msgid ""
"Books calibre can find metadata for your books from two locations: Google "
-"Books and isbndb.com. To use isbndb.com you must sign up for a "
-"free account and enter your access key "
-"below."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:95
-msgid "&Access Key:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:96
-msgid "Fetch"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:97
-msgid "Matches"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:98
-msgid ""
-"Select the book that most closely matches your copy from the list below"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:99
-msgid "Overwrite author and title with author and title of selected book"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:100
-msgid "Download &social metadata (tags/rating/etc.) for the selected book"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/job_view_ui.py:45
msgid "Details of job"
msgstr ""
@@ -8038,6 +7710,7 @@ msgid "Standard metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
msgid "Custom metadata"
msgstr ""
@@ -8225,16 +7898,13 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:530
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:424
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:826
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:867
msgid "&Rating:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:531
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:532
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:426
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:827
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:868
msgid "Rating of this book. 0-5 stars"
msgstr ""
@@ -8243,7 +7913,6 @@ msgid "No change"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:534
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:427
msgid " stars"
msgstr ""
@@ -8253,9 +7922,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:538
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:539
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:431
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:154
msgid "Open Tag Editor"
msgstr ""
@@ -8307,8 +7974,7 @@ msgid "&Force numbers to start with:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:440
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
msgid "&Date:"
msgstr ""
@@ -8326,7 +7992,6 @@ msgid "&Published:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:564
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:444
msgid "Clear published date"
msgstr ""
@@ -8383,15 +8048,13 @@ msgid "Set from &ebook file(s)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:465
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:464
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:617
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:466
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:471
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
msgid "&Custom metadata"
msgstr ""
@@ -8452,10 +8115,6 @@ msgstr ""
msgid "Enter a template to be used as the source for the search/replace"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
-msgid "&Search for:"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:598
msgid ""
"Enter the what you are looking for, either plain text or a regular "
@@ -8558,368 +8217,6 @@ msgstr ""
msgid "&Search and replace"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:97
-msgid "Last modified: %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:281
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:288
-msgid "Could not read cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:122
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:282
-msgid "Could not read cover from %s format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:128
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:289
-msgid "The cover in the %s format is invalid"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:157
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:785
-msgid "Cover size: %dx%d pixels"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:712
-msgid "Not a valid picture"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:213
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:736
-msgid "Specify title and author"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:737
-msgid "You must specify a title and author before generating a cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:245
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:906
-msgid "Downloading cover..."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:277
-msgid "Cannot fetch cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:273
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:278
-msgid "Could not fetch cover. Search the list of books by title, author, publisher, tags, comments, "
"etc. Different metadata sources have different sets of tags for the same book. "
"If this option is checked, then calibre will use the smaller tag sets. These "
@@ -11729,44 +11249,48 @@ msgid ""
"for. Most often, they all have large tag sets."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:128
msgid "Prefer &fewer tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:56
msgid "Failed to install command line tools."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:59
msgid "Command line tools installed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:60
msgid "Command line tools installed in"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:61
msgid ""
"If you move calibre.app, you have to re-install the command line tools."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:62
msgid "Max. simultaneous conversion/news download jobs:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:63
msgid "Limit the max. simultaneous jobs to the available CPU &cores"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:64
msgid "Debug &device detection"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:65
+msgid "Get information to setup the &user defined device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:66
msgid "Open calibre &configuration directory"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:67
msgid "&Install command line tools"
msgstr ""
@@ -11875,7 +11399,7 @@ msgid "Search for plugin"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
msgid "No matches"
msgstr ""
@@ -12315,10 +11839,6 @@ msgid ""
"the IP address of the computer calibre is running on."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/social.py:39
-msgid "Downloading social metadata, please wait..."
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions.py:23
msgid ""
"\n"
@@ -12673,7 +12193,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:48
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:83
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:117
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12781,7 +12301,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:123
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:114
#: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:63
msgid "Close"
@@ -12836,35 +12356,43 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:107
msgid "Get Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:114
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
msgid "Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:117
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
msgid "Stores"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:118
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:116
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
msgid "Invert"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+msgid "Open a selected book in the system's web browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+msgid "Open in &external browser"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/store/web_control.py:73
msgid ""
"This ebook is a DRMed EPUB file. You will be prompted to save this file to "
@@ -13090,10 +12618,6 @@ msgstr ""
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
-msgid "F&ind"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2106
msgid "Find the first/next matching item"
msgstr ""
@@ -14150,7 +13674,7 @@ msgstr ""
msgid "Invalid boolean query \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:51
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:55
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14161,7 +13685,7 @@ msgid ""
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:64
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:68
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14169,7 +13693,7 @@ msgid ""
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:231
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14180,7 +13704,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:244
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14188,7 +13712,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:253
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14196,7 +13720,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:262
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14204,7 +13728,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:271
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -14213,7 +13737,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:281
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -14221,7 +13745,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:290
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -14229,7 +13753,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:299
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -14237,14 +13761,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:606
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:613
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Save the output from different stages of the conversion pipeline to the "
"specified directory. Useful if you are unsure at which stage of the "
@@ -14253,7 +13777,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -14261,14 +13785,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:630
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[ Migrating old database to ebook library in %s There was an error reading from file: Cannot upload books to device there is no more free space available "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:135
msgid "Unknown formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:136
msgid ""
"You have enabled the {0} formats for your {1}. The {1} may not "
"support them. If you send these formats to your {1} they may not work. Are "
"you sure?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:148
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:409
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:274
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:138
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:410
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:275
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
@@ -7841,13 +7580,13 @@ msgstr "ضبط الخيارات لتحويل %s"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:97
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:211
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:73
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:189
msgid "&Title:"
msgstr ":ال&عنوان"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:157
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:167
msgid "&Author(s):"
msgstr "ال&مؤلف:"
@@ -7862,7 +7601,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:65
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:233
msgid "&Cancel"
msgstr ""
@@ -7877,13 +7616,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:63
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
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:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
msgid "Device"
msgstr ""
@@ -7937,138 +7676,71 @@ msgid ""
"Books
%s
will be '
+ _('All files (not just ebooks) '
+ 'from
%s
will be '
'permanently deleted. Are you sure?') % loc,
show_copy_button=False):
return
diff --git a/src/calibre/gui2/actions/edit_metadata.py b/src/calibre/gui2/actions/edit_metadata.py
index 4ab4950179..ac475cb027 100644
--- a/src/calibre/gui2/actions/edit_metadata.py
+++ b/src/calibre/gui2/actions/edit_metadata.py
@@ -478,6 +478,10 @@ class EditMetadataAction(InterfaceAction):
try:
set_title = not mi.is_null('title')
set_authors = not mi.is_null('authors')
+ idents = db.get_identifiers(i, index_is_id=True)
+ if mi.identifiers:
+ idents.update(mi.identifiers)
+ mi.identifiers = idents
db.set_metadata(i, mi, commit=False, set_title=set_title,
set_authors=set_authors, notify=False)
self.applied_ids.append(i)
diff --git a/src/calibre/gui2/actions/store.py b/src/calibre/gui2/actions/store.py
index 90f2cac3cd..92cf398f84 100644
--- a/src/calibre/gui2/actions/store.py
+++ b/src/calibre/gui2/actions/store.py
@@ -10,6 +10,7 @@ from functools import partial
from PyQt4.Qt import QMenu
+from calibre.gui2 import error_dialog
from calibre.gui2.actions import InterfaceAction
from calibre.gui2.dialogs.confirm_delete import confirm
@@ -19,24 +20,86 @@ class StoreAction(InterfaceAction):
action_spec = (_('Get books'), 'store.png', None, None)
def genesis(self):
- self.qaction.triggered.connect(self.search)
+ self.qaction.triggered.connect(self.do_search)
self.store_menu = QMenu()
self.load_menu()
def load_menu(self):
self.store_menu.clear()
- self.store_menu.addAction(_('Search'), self.search)
+ self.store_menu.addAction(_('Search for ebooks'), self.search)
+ self.store_menu.addAction(_('Search for this author'), self.search_author)
+ self.store_menu.addAction(_('Search for this title'), self.search_title)
+ self.store_menu.addAction(_('Search for this book'), self.search_author_title)
self.store_menu.addSeparator()
- for n, p in self.gui.istores.items():
- self.store_menu.addAction(n, partial(self.open_store, p))
+ self.store_list_menu = self.store_menu.addMenu(_('Stores'))
+ for n, p in sorted(self.gui.istores.items(), key=lambda x: x[0].lower()):
+ self.store_list_menu.addAction(n, partial(self.open_store, p))
self.qaction.setMenu(self.store_menu)
- def search(self):
+ def do_search(self):
+ return self.search()
+
+ def search(self, query=''):
self.show_disclaimer()
from calibre.gui2.store.search.search import SearchDialog
- sd = SearchDialog(self.gui.istores, self.gui)
+ sd = SearchDialog(self.gui.istores, self.gui, query)
sd.exec_()
+ def _get_selected_row(self):
+ rows = self.gui.current_view().selectionModel().selectedRows()
+ if not rows or len(rows) == 0:
+ return None
+ return rows[0].row()
+
+ def _get_author(self, row):
+ author = ''
+ if self.gui.current_view() is self.gui.library_view:
+ author = self.gui.library_view.model().authors(row)
+ if author:
+ author = author.replace('|', ' ')
+ else:
+ mi = self.gui.current_view().model().get_book_display_info(row)
+ author = ' & '.join(mi.authors)
+
+ return author
+
+ def search_author(self):
+ row = self._get_selected_row()
+ if row == None:
+ error_dialog(self.gui, _('Cannot search'), _('No book selected'), show=True)
+ return
+
+ query = 'author:"%s"' % self._get_author(row)
+ self.search(query)
+
+ def _get_title(self, row):
+ title = ''
+ if self.gui.current_view() is self.gui.library_view:
+ title = self.gui.library_view.model().title(row)
+ else:
+ mi = self.gui.current_view().model().get_book_display_info(row)
+ title = mi.title
+
+ return title
+
+ def search_title(self):
+ row = self._get_selected_row()
+ if row == None:
+ error_dialog(self.gui, _('Cannot search'), _('No book selected'), show=True)
+ return
+
+ query = 'title:"%s"' % self._get_title(row)
+ self.search(query)
+
+ def search_author_title(self):
+ row = self._get_selected_row()
+ if row == None:
+ error_dialog(self.gui, _('Cannot search'), _('No book selected'), show=True)
+ return
+
+ query = 'author:"%s" title:"%s"' % (self._get_author(row), self._get_title(row))
+ self.search(query)
+
def open_store(self, store_plugin):
self.show_disclaimer()
store_plugin.open(self.gui)
diff --git a/src/calibre/gui2/convert/txt_output.py b/src/calibre/gui2/convert/txt_output.py
index 8427f83824..816e8d7785 100644
--- a/src/calibre/gui2/convert/txt_output.py
+++ b/src/calibre/gui2/convert/txt_output.py
@@ -19,7 +19,7 @@ class PluginWidget(Widget, Ui_Form):
Widget.__init__(self, parent,
['newline', 'max_line_length', 'force_max_line_length',
'inline_toc', 'txt_output_formatting', 'keep_links', 'keep_image_references',
- 'txt_output_encoding'])
+ 'keep_color', 'txt_output_encoding'])
self.db, self.book_id = db, book_id
for x in get_option('newline').option.choices:
self.opt_newline.addItem(x)
diff --git a/src/calibre/gui2/convert/txt_output.ui b/src/calibre/gui2/convert/txt_output.ui
index 1ef9e6e6b9..3a62643551 100644
--- a/src/calibre/gui2/convert/txt_output.ui
+++ b/src/calibre/gui2/convert/txt_output.ui
@@ -122,6 +122,13 @@
+
%s
will be permanently deleted. Are you sure?"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:270
-msgid "Backup status"
+msgid "none"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:271
+msgid "Backup status"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:272
msgid "Book metadata files remaining to be written: %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:277
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:278
msgid "Backup metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:278
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:279
msgid ""
"Metadata will be backed up while calibre is running, at the rate of "
"approximately 1 book every three seconds."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:106
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:111
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:291
@@ -4293,60 +4087,59 @@ msgstr ""
msgid "Success"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:311
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
msgid ""
"Found no errors in your calibre library database. Do you want calibre to "
"check if the files in your library match the information in the database?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:317
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:974
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:277
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:317
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:318
msgid "Database integrity check failed, click Show details for details."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:322
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:323
msgid "No problems found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324
msgid "The files in your library match the information in the database."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:332
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:333
msgid "No library found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:333
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:334
msgid ""
"No existing calibre library was found at %s. It will be removed from the "
"list of known libraries."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:399
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:404
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:405
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:101
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:848
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:854
msgid "Not allowed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:401
msgid ""
"You cannot change libraries while using the environment variable "
"CALIBRE_OVERRIDE_DATABASE_PATH."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:405
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:406
msgid "You cannot change libraries while jobs are running."
msgstr ""
@@ -4602,109 +4395,95 @@ msgstr ""
msgid "Manage the collections on this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:26
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:24
msgid "E"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:26
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:24
msgid "Edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:30
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:28
msgid "Merge book records"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:29
msgid "M"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:33
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:31
msgid "Edit metadata individually"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:36
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:34
msgid "Edit metadata in bulk"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:37
msgid "Download metadata and covers"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:50
-msgid "Download only metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:51
-msgid "Download only covers"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:52
-msgid "Download only social metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:42
msgid "Merge into first selected book - delete others"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:45
msgid "Merge into first selected book - keep others"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:49
msgid "Merge only formats into first selected book - delete others"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:87
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:71
msgid "Cannot download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:81
msgid "Failed to download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:87
#: /home/kovid/work/calibre/src/calibre/gui2/dnd.py:84
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:462
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:716
msgid "Download failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:88
msgid "Failed to download metadata or covers for any of the %d book(s)."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:91
msgid "Metadata download completed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:93
msgid ""
"Finished downloading metadata for %d book(s). Proceed with updating "
"the metadata in your library?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:100
msgid ""
"Could not download metadata and/or covers for %d of the books. Click \"Show "
"details\" to see which books."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
msgid "Download complete"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:777
msgid "Download log"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:136
msgid "Some books changed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:137
msgid ""
"The metadata for some books in your library has changed since you started "
"the download. If you proceed, some of those changes may be overwritten. "
@@ -4712,44 +4491,27 @@ msgid ""
"proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:185
-msgid "social metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
-msgid "covers"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:227
-msgid "metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-msgid "Downloading {0} for {1} book(s)"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:213
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:309
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:219
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:346
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:256
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:259
msgid "Cannot merge books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:350
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:260
msgid "At least two books must be selected for merging"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:353
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:263
msgid ""
"You are about to merge more than 5 books. Are you sure you want to "
"proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:361
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:271
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -4757,7 +4519,7 @@ msgid ""
"changed.
Please confirm you want to proceed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:283
msgid ""
"Book formats from the selected books will be merged into the first "
"selected book (%s). Metadata in the first selected book will not be "
@@ -4769,7 +4531,7 @@ msgid ""
"calibre library.
Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:389
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:299
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -4780,15 +4542,15 @@ msgid ""
"Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:455
msgid "Applying changed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
msgid "Some failures"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:607
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -4870,20 +4632,24 @@ msgstr ""
msgid "Ctrl+P"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:23
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+msgid "Change calibre behavior"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:27
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
msgid "Restart in debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:42
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
msgid "Cannot configure while there are running jobs."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr ""
@@ -5016,7 +4782,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:95
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:71
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:109
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:653
#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
@@ -5055,7 +4821,7 @@ msgid "About Get Books"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:15
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60
msgid "Tweak ePub"
msgstr ""
@@ -5298,13 +5064,6 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:560
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:565
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:414
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:417
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:437
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
@@ -5322,8 +5081,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:277
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:280
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:176
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:166
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:91
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:93
@@ -5342,7 +5101,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:85
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:70
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:115
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:191
msgid "..."
msgstr ""
@@ -5482,14 +5241,14 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:146
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:197
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:61
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template_ui.py:46
@@ -5815,9 +5574,9 @@ msgid "Style the selected text block"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:125
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:168
+#: /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_ui.py:158
msgid "Normal"
msgstr ""
@@ -6373,49 +6132,41 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:685
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:726
msgid "Choose cover for "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:177
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:693
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:734
msgid "Cannot read"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:735
msgid "You do not have permission to read the file: "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:196
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:203
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:186
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:702
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:743
msgid "Error reading file"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:197
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:187
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:703
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:744
msgid "
"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:204
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:713
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:754
msgid " is not a valid picture"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:446
msgid "Book Cover"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:447
msgid "Change &cover image:"
msgstr ""
@@ -6428,19 +6179,16 @@ msgid "Use cover from &source file"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:164
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408
msgid "&Title: "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:165
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:72
msgid "Change the title of this book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:525
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:420
msgid "&Author(s): "
msgstr ""
@@ -6456,19 +6204,16 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:535
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:428
msgid "&Publisher: "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:429
msgid "Ta&gs: "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:537
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:430
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:868
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:909
msgid ""
"Tags categorize the book. This is particularly useful while searching. "
"
They can be any words or phrases, separated by commas."
@@ -6476,9 +6221,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:544
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:433
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:314
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:355
msgid "&Series:"
msgstr ""
@@ -6486,14 +6230,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:545
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:546
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:434
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:435
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:313
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:354
msgid "List of known series. You can add new series."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:438
msgid "Book "
msgstr ""
@@ -6502,7 +6243,7 @@ msgid "MOBI Output"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output.py:44
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64
msgid "Default"
msgstr ""
@@ -7093,14 +6834,12 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:681
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:222
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:255
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:259
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1066
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1110
msgid "Undefined"
msgstr ""
@@ -7247,7 +6986,7 @@ msgid "Eject device"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:611
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:55
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:309
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
msgid "Error"
@@ -7352,25 +7091,25 @@ msgid ""
"
"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263
-msgid "The download timed out."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:267
-msgid "Could not find cover for this book. Try specifying the ISBN first."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:279
-msgid ""
-"For the error message from each cover source, click Show details below."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:286
-msgid "Bad cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:287
-msgid "The cover is not a valid picture"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:306
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:556
-msgid "Choose formats for "
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:337
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:588
-msgid "No permission"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:338
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:589
-msgid "You do not have permission to read the following files:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:366
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:367
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:619
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:620
-msgid "No format selected"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:378
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:631
-msgid "Could not read metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:379
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:632
-msgid "Could not read metadata from %s format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:233
-msgid ""
-" The green color indicates that the current author sort matches the current "
-"author"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:456
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:236
-msgid ""
-" The red color indicates that the current author sort does not match the "
-"current author. No action is required if this is what you want."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:463
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:121
-msgid ""
-" The green color indicates that the current title sort matches the current "
-"title"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:466
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:124
-msgid ""
-" The red color warns that the current title sort does not match the current "
-"title. No action is required if this is what you want."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:106
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:221
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:384
-msgid "Previous"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:475
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:419
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:424
-msgid "Save changes and edit the metadata of %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:824
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:107
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:211
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:401
-msgid "Next"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:690
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:695
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:989
-msgid "This ISBN number is valid"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:698
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:992
-msgid "This ISBN number is invalid"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:783
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:903
-msgid "Tags changed"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:784
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:904
-msgid ""
-"You have changed the tags. In order to use the tags editor, you must either "
-"discard or apply these changes. Apply changes?"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:819
-msgid "Timed out"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:820
-msgid ""
-"The download of social metadata timed out, the servers are probably busy. "
-"Try again later."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:827
-msgid "There were errors"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:828
-msgid "There were errors downloading social metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:862
-msgid "Cannot fetch metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:863
-msgid "You must specify at least one of ISBN, Title, Authors or Publisher"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:961
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:366
-msgid "Permission denied"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:962
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:367
-msgid "Could not open %s. Is it being used by another program?"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406
-msgid "Edit Meta Information"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407
-msgid "Meta information"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
-msgid ""
-"Automatically create the title sort entry based on the current title entry.\n"
-"Using this button to create title sort will change title sort from red to "
-"green."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:122
-msgid "Swap the author and title"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:415
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:106
-msgid ""
-"Automatically create the author sort entry based on the current author "
-"entry.\n"
-"Using this button to create author sort will change author sort from red to "
-"green."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:418
-msgid "Title &sort: "
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:419
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:111
-msgid ""
-"Specify how this book should be sorted when by title. For example, The "
-"Exorcist might be sorted as Exorcist, The."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:421
-msgid "Author S&ort: "
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:422
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:218
-msgid ""
-"Specify how the author(s) of this book should be sorted. For example Charles "
-"Dickens should be sorted as Dickens, Charles.\n"
-"If the box is colored green, then text matches the individual author's sort "
-"strings. If it is colored red, then the authors and this text do not match."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:436
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
-msgid "Remove unused series (Series that have no books)"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:439
-msgid "IS&BN:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:441
-msgid "dd MMM yyyy"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:442
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
-msgid "Publishe&d:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:445
-msgid "&Fetch metadata from server"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:448
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:651
-msgid "&Browse"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:449
-msgid "Remove border (if any) from cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:450
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:653
-msgid "T&rim"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:451
-msgid "Reset cover to default"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:452
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:655
-msgid "&Remove"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:453
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:661
-msgid "Download co&ver"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:454
-msgid "Generate a default cover based on the title and author"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:455
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:662
-msgid "&Generate cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:456
-msgid "Available Formats"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:457
-msgid "Add a new format for this book to the database"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:459
-msgid "Remove the selected formats for this book from the database."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:461
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:468
-msgid "Set the cover for the book from the selected format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:463
-msgid "Update metadata from the metadata in the selected format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:464
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:683
-msgid "&Comments"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:61
msgid "Password needed"
msgstr ""
@@ -9372,7 +8669,7 @@ msgid "&Author:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:215
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:908
msgid "Ta&gs:"
msgstr ""
@@ -9641,24 +8938,12 @@ msgstr ""
msgid "&Test"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:55
-msgid "Display contents of exploded ePub"
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub.py:100
+msgid "Cannot preview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:56
-msgid "&Explode ePub"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:57
-msgid "Rebuild ePub from exploded contents"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:58
-msgid "&Rebuild ePub"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:59
-msgid "Discard changes"
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub.py:101
+msgid "You must first explode the epub before previewing."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:61
@@ -9670,6 +8955,30 @@ msgid ""
"updating your calibre library.
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
msgid "Donate"
msgstr ""
@@ -10319,7 +9628,7 @@ msgstr ""
msgid "Restore default layout"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:849
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:855
msgid ""
"Dropping onto a device is not supported. First add the book to the calibre "
"library."
@@ -10349,12 +9658,6 @@ msgstr ""
msgid "No matches for the search phrase %s were found."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:471
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:503
-msgid "No matches found"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:128
msgid "LRF Viewer"
msgstr ""
@@ -10548,219 +9851,390 @@ msgstr ""
msgid "Unhandled exception"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:121
+msgid ""
+"Specify how this book should be sorted when by title. For example, The "
+"Exorcist might be sorted as Exorcist, The."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:123
msgid "Title &sort:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:131
+msgid ""
+" The green color indicates that the current title sort matches the current "
+"title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:134
+msgid ""
+" The red color warns that the current title sort does not match the current "
+"title. No action is required if this is what you want."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:181
+msgid "Authors changed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:182
+msgid ""
+"You have changed the authors for this book. You must save these changes "
+"before you can use Manage authors. Do you want to save these changes?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:252
+msgid ""
+"Specify how the author(s) of this book should be sorted. For example Charles "
+"Dickens should be sorted as Dickens, Charles.\n"
+"If the box is colored green, then text matches the individual author's sort "
+"strings. If it is colored red, then the authors and this text do not match."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:257
msgid "Author s&ort:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:370
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:267
+msgid ""
+" The green color indicates that the current author sort matches the current "
+"author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:270
+msgid ""
+" The red color indicates that the current author sort does not match the "
+"current author. No action is required if this is what you want."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:411
msgid "&Number:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:451
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:492
msgid ""
"Last modified: %s\n"
"\n"
"Double click to view"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:476
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:509
+msgid "Set the cover for the book from the selected format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:517
msgid "Set metadata for the book from the selected format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:483
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:524
msgid "Add a format to this book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:490
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:531
msgid "Remove the selected format from this book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:597
+msgid "Choose formats for "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:629
+msgid "No permission"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:630
+msgid "You do not have permission to read the following files:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:660
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:661
+msgid "No format selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:672
+msgid "Could not read metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:673
+msgid "Could not read metadata from %s format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:692
+msgid "&Browse"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
+msgid "T&rim"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:696
+msgid "&Remove"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:702
+msgid "Download co&ver"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:703
+msgid "&Generate cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:753
+msgid "Not a valid picture"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:777
+msgid "Specify title and author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:778
+msgid "You must specify a title and author before generating a cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:796
msgid "Invalid cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:756
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:797
msgid "Could not change cover as the image is invalid."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:783
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:824
msgid "This book has no cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:834
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:826
+msgid "Cover size: %dx%d pixels"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:875
msgid "stars"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:927
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:944
+msgid "Tags changed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:945
+msgid ""
+"You have changed the tags. In order to use the tags editor, you must either "
+"discard or apply these changes. Apply changes?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:971
msgid "I&ds:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:928
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:972
msgid ""
"Edit the identifiers for this book. For example: \n"
"\n"
"%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:999
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1033
+msgid "This ISBN number is valid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1036
+msgid "This ISBN number is invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1069
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:109
-msgid "Book has neither title nor ISBN"
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+msgid "Publishe&d:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:138
-msgid "No matches found for this book"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:227
-msgid "cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:228
-msgid "Downloaded"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:228
-msgid "Failed to get"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:232
-msgid "%s %s for: %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:291
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:175
-msgid "Done"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:292
-msgid "Successfully downloaded metadata for %d out of %d books"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:294
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:765
-msgid "Details"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:34
msgid "Schedule download?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:45
msgid ""
"The download of metadata for the %d selected book(s) will run in the "
"background. Proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:47
msgid ""
"You can monitor the progress of the download by clicking the rotating "
"spinner in the bottom right corner."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:50
msgid ""
"When the download completes you will be asked for confirmation before "
"calibre applies the downloaded metadata."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:61
msgid "Download only &metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:65
msgid "Download only &covers"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:69
msgid "&Configure download"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:73
msgid "Download &both"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:99
msgid "Download metadata for %d books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:102
msgid "Metadata download started"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:111
msgid "(Failed metadata)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:113
msgid "(Failed cover)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:190
msgid "Downloaded %d of %d"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/config.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:115
msgid "Downloaded metadata fields"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:824
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:107
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:211
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:401
+msgid "Next"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:106
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:221
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:384
+msgid "Previous"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
-msgid "Set author sort from author"
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+msgid ""
+"Automatically create the title sort entry based on the current title entry.\n"
+"Using this button to create title sort will change title sort from red to "
+"green."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+msgid ""
+"Automatically create the author sort entry based on the current author "
+"entry. Using this button to create author sort will change author sort from "
+"red to green. There is a menu of functions available under this button. "
+"Click and hold on the button to see it."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+msgid "Set author sort from author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+msgid "Swap the author and title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+msgid "Remove unused series (Series that have no books)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:512
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:702
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+msgid "Could not read cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+msgid "Could not read cover from %s format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+msgid "The cover in the %s format is invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+msgid "Permission denied"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+msgid "Could not open %s. Is it being used by another program?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+msgid "Save changes and edit the metadata of %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:561
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:605
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
msgid "&Cover and formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:624
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:630
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:762
msgid "Configure metadata downloading"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:677
msgid "C&ustom metadata"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+msgid "&Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+msgid "Basic metadata"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:132
msgid "Has cover"
msgstr ""
@@ -10833,6 +10307,10 @@ msgstr ""
msgid "Downloading metadata..."
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:906
+msgid "Downloading cover..."
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/__init__.py:37
msgid ""
"Restore settings to default values. You have to click Apply to actually save "
@@ -10927,111 +10405,111 @@ msgstr ""
msgid "&Configure metadata from file name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:170
+#: /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_ui.py:160
msgid "Low"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:159
msgid "High"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
msgid "Very low"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64
msgid "Compact Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:65
+msgid "All on 1 tab"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
+msgid "Done"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:166
msgid "Confirmation dialogs have all been reset"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:155
-msgid "&Overwrite author and title by default when fetching metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:156
-msgid "Download &social metadata (tags/ratings/etc.) by default"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:157
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:147
msgid "Show notification when &new version is available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:158
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:148
msgid ""
"If checked, Yes/No custom columns values can be Yes, No, or Unknown.\n"
"If not checked, the values can be Yes or No."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:150
msgid "Yes/No columns have three values (Requires restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:151
msgid "Automatically send downloaded &news to ebook reader"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:162
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:152
msgid "&Delete news from library when it is automatically sent to reader"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:153
msgid "Preferred &output format:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:154
msgid "Default network &timeout:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:155
msgid ""
"Set the default timeout for network fetches (i.e. anytime we go out to the "
"internet to get information)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:166
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:156
msgid " seconds"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:167
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:157
msgid "Job &priority:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:161
msgid "Restriction to apply when the current library is opened:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:162
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. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:163
msgid "Edit metadata (single) layout:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:164
msgid ""
"Choose a different layout for the Edit Metadata dialog. The compact metadata "
"layout favors editing custom metadata over changing covers and formats."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165
msgid "Preferred &input format order:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:168
msgid "Use internal &viewer for:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:169
msgid "Reset all disabled &confirmation dialogs"
msgstr ""
@@ -11145,6 +10623,10 @@ msgstr ""
msgid "Quick create:"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
+msgid "ISBN"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
@@ -11365,6 +10847,7 @@ msgid "Getting debug information"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_debug.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:32
msgid "Copy to &clipboard"
msgstr ""
@@ -11372,6 +10855,35 @@ msgstr ""
msgid "Debug device detection"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:31
+msgid "Getting device information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:34
+msgid "User-defined device information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:51
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:57
+msgid "Device Detection"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:52
+msgid "Ensure your device is disconnected, then press OK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:58
+msgid "Ensure your device is connected, then press OK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:88
+msgid ""
+"Copy these values to the clipboard, paste them into an editor, then enter "
+"them into the USER_DEVICE by customizing the device plugin in Preferences-"
+">Plugins. Remember to also enter the folders where you want the books to be "
+"put. You must restart calibre for your changes to take effect.\n"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:66
msgid ""
"calibre can send your books to you (or your reader) by email. Emails will be "
@@ -11654,71 +11166,79 @@ msgstr ""
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:282
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected, cannot configure."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:110
msgid "Metadata sources"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:111
msgid ""
"Disable any metadata sources you do not want by unchecking them. You can "
"also set the cover priority. Covers from sources that have a higher "
"(smaller) priority will be preferred when bulk downloading metadata.\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:113
msgid ""
"Sources with a red X next to their names must be configured before they will "
"be used. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:108
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:114
msgid "Configure selected source"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:116
msgid ""
"If you uncheck any fields, metadata for those fields will not be downloaded"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:117
+msgid "&Select all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:118
+msgid "&Clear all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:119
msgid "Convert all downloaded comments to plain &text"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:120
msgid "Swap author names from FN LN to LN, FN"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:121
msgid "Max. number of &tags to download:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:122
msgid "Max. &time to wait after first match is found:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:115
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:117
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:199
msgid " secs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:116
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:124
msgid "Max. time to wait after first &cover is found:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:126
msgid ""
"
%s
will be permanently deleted. Are you sure?"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:270
-msgid "Backup status"
+msgid "none"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:271
+msgid "Backup status"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:272
msgid "Book metadata files remaining to be written: %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:277
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:278
msgid "Backup metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:278
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:279
msgid ""
"Metadata will be backed up while calibre is running, at the rate of "
"approximately 1 book every three seconds."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:106
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:111
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:291
@@ -4384,60 +4178,59 @@ msgstr ""
msgid "Success"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:311
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
msgid ""
"Found no errors in your calibre library database. Do you want calibre to "
"check if the files in your library match the information in the database?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:317
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:974
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:277
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:317
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:318
msgid "Database integrity check failed, click Show details for details."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:322
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:323
msgid "No problems found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:324
msgid "The files in your library match the information in the database."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:332
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:333
msgid "No library found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:333
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:334
msgid ""
"No existing calibre library was found at %s. It will be removed from the "
"list of known libraries."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:399
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:404
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:405
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:101
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:848
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:854
msgid "Not allowed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:401
msgid ""
"You cannot change libraries while using the environment variable "
"CALIBRE_OVERRIDE_DATABASE_PATH."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:405
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:406
msgid "You cannot change libraries while jobs are running."
msgstr ""
@@ -4693,109 +4486,95 @@ msgstr ""
msgid "Manage the collections on this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:26
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:24
msgid "E"
msgstr "E"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:26
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:24
msgid "Edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:30
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:28
msgid "Merge book records"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:29
msgid "M"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:33
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:31
msgid "Edit metadata individually"
msgstr "تحرير الميتاداتا فردياً"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:36
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:34
msgid "Edit metadata in bulk"
msgstr "تحرير الميتاداتا جملةً"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:37
msgid "Download metadata and covers"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:50
-msgid "Download only metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:51
-msgid "Download only covers"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:52
-msgid "Download only social metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:42
msgid "Merge into first selected book - delete others"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:45
msgid "Merge into first selected book - keep others"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:49
msgid "Merge only formats into first selected book - delete others"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:87
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:71
msgid "Cannot download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:81
msgid "Failed to download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:87
#: /home/kovid/work/calibre/src/calibre/gui2/dnd.py:84
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:462
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:716
msgid "Download failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:88
msgid "Failed to download metadata or covers for any of the %d book(s)."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:91
msgid "Metadata download completed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:93
msgid ""
"Finished downloading metadata for %d book(s). Proceed with updating "
"the metadata in your library?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:100
msgid ""
"Could not download metadata and/or covers for %d of the books. Click \"Show "
"details\" to see which books."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
msgid "Download complete"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:777
msgid "Download log"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:136
msgid "Some books changed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:137
msgid ""
"The metadata for some books in your library has changed since you started "
"the download. If you proceed, some of those changes may be overwritten. "
@@ -4803,44 +4582,27 @@ msgid ""
"proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:185
-msgid "social metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
-msgid "covers"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:227
-msgid "metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-msgid "Downloading {0} for {1} book(s)"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:213
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:309
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:219
msgid "Cannot edit metadata"
msgstr "لا يمكن تحرير الميتاداتا"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:346
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:256
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:259
msgid "Cannot merge books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:350
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:260
msgid "At least two books must be selected for merging"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:353
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:263
msgid ""
"You are about to merge more than 5 books. Are you sure you want to "
"proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:361
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:271
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -4848,7 +4610,7 @@ msgid ""
"changed.
Please confirm you want to proceed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:283
msgid ""
"Book formats from the selected books will be merged into the first "
"selected book (%s). Metadata in the first selected book will not be "
@@ -4860,7 +4622,7 @@ msgid ""
"calibre library.
Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:389
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:299
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -4871,15 +4633,15 @@ msgid ""
"Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:455
msgid "Applying changed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
msgid "Some failures"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:607
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -4961,20 +4723,24 @@ msgstr ""
msgid "Ctrl+P"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:23
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+msgid "Change calibre behavior"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:27
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
msgid "Restart in debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:42
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
msgid "Cannot configure while there are running jobs."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr ""
@@ -5107,7 +4873,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:95
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:71
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:109
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:653
#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
@@ -5146,7 +4912,7 @@ msgid "About Get Books"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:15
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60
msgid "Tweak ePub"
msgstr ""
@@ -5389,13 +5155,6 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:560
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:565
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:412
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:414
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:417
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:437
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
@@ -5413,8 +5172,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:277
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:280
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:176
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:166
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:91
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:93
@@ -5433,7 +5192,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:85
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:70
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:115
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:191
msgid "..."
msgstr "..."
@@ -5573,14 +5332,14 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:146
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:197
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:61
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template_ui.py:46
@@ -5906,9 +5665,9 @@ msgid "Style the selected text block"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:125
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:168
+#: /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_ui.py:158
msgid "Normal"
msgstr "عادي"
@@ -6464,49 +6223,41 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:685
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:726
msgid "Choose cover for "
msgstr "إختار الغلاف لـ "
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:177
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:693
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:734
msgid "Cannot read"
msgstr "لا يمكن القراءة"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:735
msgid "You do not have permission to read the file: "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:196
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:203
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:186
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:702
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:743
msgid "Error reading file"
msgstr "خطأ في قراءة الملف"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:197
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:187
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:703
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:744
msgid "
"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:204
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:713
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:754
msgid " is not a valid picture"
msgstr " ليست صورة صالحة"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:446
msgid "Book Cover"
msgstr "غلاف الكتاب"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:447
msgid "Change &cover image:"
msgstr "تغيير صورة الغلاف&:"
@@ -6519,19 +6270,16 @@ msgid "Use cover from &source file"
msgstr "استخدم غلاف من المصدر&"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:164
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:408
msgid "&Title: "
msgstr ":ال&عنوان "
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:165
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:72
msgid "Change the title of this book"
msgstr "تغيير عنوان هذا الكتاب"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:525
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:420
msgid "&Author(s): "
msgstr "ال&مؤلف: "
@@ -6547,19 +6295,16 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:535
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:428
msgid "&Publisher: "
msgstr "&الناشر: "
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:429
msgid "Ta&gs: "
msgstr "الو&سوم: "
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:537
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:430
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:868
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:909
msgid ""
"Tags categorize the book. This is particularly useful while searching. "
"
They can be any words or phrases, separated by commas."
@@ -6569,9 +6314,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:544
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:433
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:314
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:355
msgid "&Series:"
msgstr "&سلسلات:"
@@ -6579,14 +6323,11 @@ msgstr "&سلسلات:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:545
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:546
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:434
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:435
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:313
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:354
msgid "List of known series. You can add new series."
msgstr "قائمة السلسلات المعروفة. بإمكانك إضافة سلسلات جديدة."
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:175
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:438
msgid "Book "
msgstr "الكتاب "
@@ -6595,7 +6336,7 @@ msgid "MOBI Output"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output.py:44
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64
msgid "Default"
msgstr ""
@@ -7186,14 +6927,12 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:681
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:222
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:255
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:259
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1066
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1110
msgid "Undefined"
msgstr ""
@@ -7340,7 +7079,7 @@ msgid "Eject device"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:611
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:55
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:309
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
msgid "Error"
@@ -7445,25 +7184,25 @@ msgid ""
"
calibre can find metadata for your books from two locations: Google " -"Books and isbndb.com.
To use isbndb.com you must sign up for a "
-"free account and enter your access key "
-"below."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:95
-msgid "&Access Key:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:96
-msgid "Fetch"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:97
-msgid "Matches"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:98
-msgid ""
-"Select the book that most closely matches your copy from the list below"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:99
-msgid "Overwrite author and title with author and title of selected book"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:100
-msgid "Download &social metadata (tags/rating/etc.) for the selected book"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/job_view_ui.py:45
msgid "Details of job"
msgstr ""
@@ -8131,6 +7803,7 @@ msgid "Standard metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
msgid "Custom metadata"
msgstr ""
@@ -8318,16 +7991,13 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:530
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:424
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:826
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:867
msgid "&Rating:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:531
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:532
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:426
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:827
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:868
msgid "Rating of this book. 0-5 stars"
msgstr ""
@@ -8336,7 +8006,6 @@ msgid "No change"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:534
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:427
msgid " stars"
msgstr " نجمة"
@@ -8346,9 +8015,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:538
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:539
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:431
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:154
msgid "Open Tag Editor"
msgstr "فتح محرر الوسوم"
@@ -8400,8 +8067,7 @@ msgid "&Force numbers to start with:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:440
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
msgid "&Date:"
msgstr ""
@@ -8419,7 +8085,6 @@ msgid "&Published:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:564
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:444
msgid "Clear published date"
msgstr ""
@@ -8476,15 +8141,13 @@ msgid "Set from &ebook file(s)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:465
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:464
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:617
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:466
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:471
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
msgid "&Custom metadata"
msgstr ""
@@ -8545,10 +8208,6 @@ msgstr ""
msgid "Enter a template to be used as the source for the search/replace"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
-msgid "&Search for:"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:598
msgid ""
"Enter the what you are looking for, either plain text or a regular "
@@ -8651,368 +8310,6 @@ msgstr ""
msgid "&Search and replace"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:97
-msgid "Last modified: %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:281
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:288
-msgid "Could not read cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:122
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:282
-msgid "Could not read cover from %s format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:128
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:289
-msgid "The cover in the %s format is invalid"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:157
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:785
-msgid "Cover size: %dx%d pixels"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:194
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:712
-msgid "Not a valid picture"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:213
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:736
-msgid "Specify title and author"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:737
-msgid "You must specify a title and author before generating a cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:245
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:906
-msgid "Downloading cover..."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:277
-msgid "Cannot fetch cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:273
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:278
-msgid "Could not fetch cover.
"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:263
-msgid "The download timed out."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:267
-msgid "Could not find cover for this book. Try specifying the ISBN first."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:279
-msgid ""
-"For the error message from each cover source, click Show details below."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:286
-msgid "Bad cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:287
-msgid "The cover is not a valid picture"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:306
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:556
-msgid "Choose formats for "
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:337
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:588
-msgid "No permission"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:338
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:589
-msgid "You do not have permission to read the following files:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:366
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:367
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:619
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:620
-msgid "No format selected"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:378
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:631
-msgid "Could not read metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:379
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:632
-msgid "Could not read metadata from %s format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:233
-msgid ""
-" The green color indicates that the current author sort matches the current "
-"author"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:456
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:236
-msgid ""
-" The red color indicates that the current author sort does not match the "
-"current author. No action is required if this is what you want."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:463
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:121
-msgid ""
-" The green color indicates that the current title sort matches the current "
-"title"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:466
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:124
-msgid ""
-" The red color warns that the current title sort does not match the current "
-"title. No action is required if this is what you want."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:106
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:221
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:384
-msgid "Previous"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:475
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:419
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:424
-msgid "Save changes and edit the metadata of %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:824
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:107
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:211
-#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:401
-msgid "Next"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:690
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:695
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:989
-msgid "This ISBN number is valid"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:698
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:992
-msgid "This ISBN number is invalid"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:783
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:903
-msgid "Tags changed"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:784
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:904
-msgid ""
-"You have changed the tags. In order to use the tags editor, you must either "
-"discard or apply these changes. Apply changes?"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:819
-msgid "Timed out"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:820
-msgid ""
-"The download of social metadata timed out, the servers are probably busy. "
-"Try again later."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:827
-msgid "There were errors"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:828
-msgid "There were errors downloading social metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:862
-msgid "Cannot fetch metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:863
-msgid "You must specify at least one of ISBN, Title, Authors or Publisher"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:961
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:366
-msgid "Permission denied"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:962
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:367
-msgid "Could not open %s. Is it being used by another program?"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:406
-msgid "Edit Meta Information"
-msgstr "تحرير معلومات الميتا"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:407
-msgid "Meta information"
-msgstr "معلومات الميتا"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
-msgid ""
-"Automatically create the title sort entry based on the current title entry.\n"
-"Using this button to create title sort will change title sort from red to "
-"green."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:122
-msgid "Swap the author and title"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:415
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:106
-msgid ""
-"Automatically create the author sort entry based on the current author "
-"entry.\n"
-"Using this button to create author sort will change author sort from red to "
-"green."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:418
-msgid "Title &sort: "
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:419
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:111
-msgid ""
-"Specify how this book should be sorted when by title. For example, The "
-"Exorcist might be sorted as Exorcist, The."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:421
-msgid "Author S&ort: "
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:422
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:218
-msgid ""
-"Specify how the author(s) of this book should be sorted. For example Charles "
-"Dickens should be sorted as Dickens, Charles.\n"
-"If the box is colored green, then text matches the individual author's sort "
-"strings. If it is colored red, then the authors and this text do not match."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:436
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
-msgid "Remove unused series (Series that have no books)"
-msgstr "حذف سلسلات غير مستخدمة (سلسلات التي لا تحتوي على كتب)"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:439
-msgid "IS&BN:"
-msgstr "IS&BN:"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:441
-msgid "dd MMM yyyy"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:442
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
-msgid "Publishe&d:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:445
-msgid "&Fetch metadata from server"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:448
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:651
-msgid "&Browse"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:449
-msgid "Remove border (if any) from cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:450
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:653
-msgid "T&rim"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:451
-msgid "Reset cover to default"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:452
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:655
-msgid "&Remove"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:453
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:661
-msgid "Download co&ver"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:454
-msgid "Generate a default cover based on the title and author"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:455
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:662
-msgid "&Generate cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:456
-msgid "Available Formats"
-msgstr "التهيئات المتوفرة"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:457
-msgid "Add a new format for this book to the database"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:459
-msgid "Remove the selected formats for this book from the database."
-msgstr "حذف التهيئات المختارة لهذا الكتاب من قاعدة البيانات."
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:461
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:468
-msgid "Set the cover for the book from the selected format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:463
-msgid "Update metadata from the metadata in the selected format"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:464
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:683
-msgid "&Comments"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:61
msgid "Password needed"
msgstr ""
@@ -9465,7 +8762,7 @@ msgid "&Author:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:215
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:908
msgid "Ta&gs:"
msgstr ""
@@ -9738,24 +9035,12 @@ msgstr ""
msgid "&Test"
msgstr "&تجربة"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:55
-msgid "Display contents of exploded ePub"
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub.py:100
+msgid "Cannot preview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:56
-msgid "&Explode ePub"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:57
-msgid "Rebuild ePub from exploded contents"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:58
-msgid "&Rebuild ePub"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:59
-msgid "Discard changes"
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub.py:101
+msgid "You must first explode the epub before previewing."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:61
@@ -9767,6 +9052,30 @@ msgid ""
"updating your calibre library.
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:183
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
msgid "Donate"
msgstr ""
@@ -10416,7 +9725,7 @@ msgstr ""
msgid "Restore default layout"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:849
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:855
msgid ""
"Dropping onto a device is not supported. First add the book to the calibre "
"library."
@@ -10446,12 +9755,6 @@ msgstr " - مستعرض LRF"
msgid "No matches for the search phrase %s were found."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:471
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:503
-msgid "No matches found"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:128
msgid "LRF Viewer"
msgstr "مستعرض LRF"
@@ -10645,219 +9948,390 @@ msgstr ""
msgid "Unhandled exception"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:121
+msgid ""
+"Specify how this book should be sorted when by title. For example, The "
+"Exorcist might be sorted as Exorcist, The."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:123
msgid "Title &sort:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:131
+msgid ""
+" The green color indicates that the current title sort matches the current "
+"title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:134
+msgid ""
+" The red color warns that the current title sort does not match the current "
+"title. No action is required if this is what you want."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:181
+msgid "Authors changed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:182
+msgid ""
+"You have changed the authors for this book. You must save these changes "
+"before you can use Manage authors. Do you want to save these changes?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:252
+msgid ""
+"Specify how the author(s) of this book should be sorted. For example Charles "
+"Dickens should be sorted as Dickens, Charles.\n"
+"If the box is colored green, then text matches the individual author's sort "
+"strings. If it is colored red, then the authors and this text do not match."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:257
msgid "Author s&ort:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:370
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:267
+msgid ""
+" The green color indicates that the current author sort matches the current "
+"author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:270
+msgid ""
+" The red color indicates that the current author sort does not match the "
+"current author. No action is required if this is what you want."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:411
msgid "&Number:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:451
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:492
msgid ""
"Last modified: %s\n"
"\n"
"Double click to view"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:476
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:509
+msgid "Set the cover for the book from the selected format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:517
msgid "Set metadata for the book from the selected format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:483
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:524
msgid "Add a format to this book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:490
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:531
msgid "Remove the selected format from this book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:597
+msgid "Choose formats for "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:629
+msgid "No permission"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:630
+msgid "You do not have permission to read the following files:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:660
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:661
+msgid "No format selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:672
+msgid "Could not read metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:673
+msgid "Could not read metadata from %s format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:692
+msgid "&Browse"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
+msgid "T&rim"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:696
+msgid "&Remove"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:702
+msgid "Download co&ver"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:703
+msgid "&Generate cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:753
+msgid "Not a valid picture"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:777
+msgid "Specify title and author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:778
+msgid "You must specify a title and author before generating a cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:796
msgid "Invalid cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:756
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:797
msgid "Could not change cover as the image is invalid."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:783
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:824
msgid "This book has no cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:834
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:826
+msgid "Cover size: %dx%d pixels"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:875
msgid "stars"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:927
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:944
+msgid "Tags changed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:945
+msgid ""
+"You have changed the tags. In order to use the tags editor, you must either "
+"discard or apply these changes. Apply changes?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:971
msgid "I&ds:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:928
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:972
msgid ""
"Edit the identifiers for this book. For example: \n"
"\n"
"%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:999
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1033
+msgid "This ISBN number is valid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1036
+msgid "This ISBN number is invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1069
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:109
-msgid "Book has neither title nor ISBN"
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+msgid "Publishe&d:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:138
-msgid "No matches found for this book"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:227
-msgid "cover"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:228
-msgid "Downloaded"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:228
-msgid "Failed to get"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:232
-msgid "%s %s for: %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:291
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:175
-msgid "Done"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:292
-msgid "Successfully downloaded metadata for %d out of %d books"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:294
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:765
-msgid "Details"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:34
msgid "Schedule download?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:45
msgid ""
"The download of metadata for the %d selected book(s) will run in the "
"background. Proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:47
msgid ""
"You can monitor the progress of the download by clicking the rotating "
"spinner in the bottom right corner."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:50
msgid ""
"When the download completes you will be asked for confirmation before "
"calibre applies the downloaded metadata."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:61
msgid "Download only &metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:65
msgid "Download only &covers"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:69
msgid "&Configure download"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:73
msgid "Download &both"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:99
msgid "Download metadata for %d books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:102
msgid "Metadata download started"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:111
msgid "(Failed metadata)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:113
msgid "(Failed cover)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download2.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:190
msgid "Downloaded %d of %d"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/config.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:115
msgid "Downloaded metadata fields"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:824
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:107
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:211
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:401
+msgid "Next"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:106
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:221
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:384
+msgid "Previous"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
-msgid "Set author sort from author"
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+msgid ""
+"Automatically create the title sort entry based on the current title entry.\n"
+"Using this button to create title sort will change title sort from red to "
+"green."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+msgid ""
+"Automatically create the author sort entry based on the current author "
+"entry. Using this button to create author sort will change author sort from "
+"red to green. There is a menu of functions available under this button. "
+"Click and hold on the button to see it."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+msgid "Set author sort from author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+msgid "Swap the author and title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+msgid "Remove unused series (Series that have no books)"
+msgstr "حذف سلسلات غير مستخدمة (سلسلات التي لا تحتوي على كتب)"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:512
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:702
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+msgid "Could not read cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+msgid "Could not read cover from %s format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+msgid "The cover in the %s format is invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+msgid "Permission denied"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+msgid "Could not open %s. Is it being used by another program?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+msgid "Save changes and edit the metadata of %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:561
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:605
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
msgid "&Cover and formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:624
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:630
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:762
msgid "Configure metadata downloading"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:677
msgid "C&ustom metadata"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+msgid "&Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+msgid "Basic metadata"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:132
msgid "Has cover"
msgstr ""
@@ -10930,6 +10404,10 @@ msgstr ""
msgid "Downloading metadata..."
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:906
+msgid "Downloading cover..."
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/__init__.py:37
msgid ""
"Restore settings to default values. You have to click Apply to actually save "
@@ -11024,111 +10502,111 @@ msgstr ""
msgid "&Configure metadata from file name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:170
+#: /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_ui.py:160
msgid "Low"
msgstr "منخفض"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:159
msgid "High"
msgstr "مرتفع"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
msgid "Very low"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64
msgid "Compact Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:65
+msgid "All on 1 tab"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
+msgid "Done"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:166
msgid "Confirmation dialogs have all been reset"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:155
-msgid "&Overwrite author and title by default when fetching metadata"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:156
-msgid "Download &social metadata (tags/ratings/etc.) by default"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:157
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:147
msgid "Show notification when &new version is available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:158
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:148
msgid ""
"If checked, Yes/No custom columns values can be Yes, No, or Unknown.\n"
"If not checked, the values can be Yes or No."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:150
msgid "Yes/No columns have three values (Requires restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:151
msgid "Automatically send downloaded &news to ebook reader"
msgstr "إرسال الأخبار& التي تم تنزيلها آلياً إلى قارئ الكتب الإلكترونية"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:162
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:152
msgid "&Delete news from library when it is automatically sent to reader"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:153
msgid "Preferred &output format:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:154
msgid "Default network &timeout:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:155
msgid ""
"Set the default timeout for network fetches (i.e. anytime we go out to the "
"internet to get information)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:166
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:156
msgid " seconds"
msgstr " ثانية"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:167
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:157
msgid "Job &priority:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:161
msgid "Restriction to apply when the current library is opened:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:162
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. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:163
msgid "Edit metadata (single) layout:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:164
msgid ""
"Choose a different layout for the Edit Metadata dialog. The compact metadata "
"layout favors editing custom metadata over changing covers and formats."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165
msgid "Preferred &input format order:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:168
msgid "Use internal &viewer for:"
msgstr "استخدم المستعرض& الداخلي في:"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:169
msgid "Reset all disabled &confirmation dialogs"
msgstr ""
@@ -11242,6 +10720,10 @@ msgstr ""
msgid "Quick create:"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
+msgid "ISBN"
+msgstr "ISBN"
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
@@ -11462,6 +10944,7 @@ msgid "Getting debug information"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_debug.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:32
msgid "Copy to &clipboard"
msgstr ""
@@ -11469,6 +10952,35 @@ msgstr ""
msgid "Debug device detection"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:31
+msgid "Getting device information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:34
+msgid "User-defined device information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:51
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:57
+msgid "Device Detection"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:52
+msgid "Ensure your device is disconnected, then press OK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:58
+msgid "Ensure your device is connected, then press OK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_user_defined.py:88
+msgid ""
+"Copy these values to the clipboard, paste them into an editor, then enter "
+"them into the USER_DEVICE by customizing the device plugin in Preferences-"
+">Plugins. Remember to also enter the folders where you want the books to be "
+"put. You must restart calibre for your changes to take effect.\n"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:66
msgid ""
"calibre can send your books to you (or your reader) by email. Emails will be "
@@ -11751,71 +11263,79 @@ msgstr ""
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:282
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected, cannot configure."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:110
msgid "Metadata sources"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:111
msgid ""
"Disable any metadata sources you do not want by unchecking them. You can "
"also set the cover priority. Covers from sources that have a higher "
"(smaller) priority will be preferred when bulk downloading metadata.\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:113
msgid ""
"Sources with a red X next to their names must be configured before they will "
"be used. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:108
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:114
msgid "Configure selected source"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:116
msgid ""
"If you uncheck any fields, metadata for those fields will not be downloaded"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:117
+msgid "&Select all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:118
+msgid "&Clear all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:119
msgid "Convert all downloaded comments to plain &text"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:120
msgid "Swap author names from FN LN to LN, FN"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:121
msgid "Max. number of &tags to download:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:122
msgid "Max. &time to wait after first match is found:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:115
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:117
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:199
msgid " secs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:116
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:124
msgid "Max. time to wait after first &cover is found:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:126
msgid ""
"
Different metadata sources have different sets of tags for the same book. "
"If this option is checked, then calibre will use the smaller tag sets. These "
@@ -11826,44 +11346,48 @@ msgid ""
"for. Most often, they all have large tag sets."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:128
msgid "Prefer &fewer tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:56
msgid "Failed to install command line tools."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:59
msgid "Command line tools installed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:60
msgid "Command line tools installed in"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:61
msgid ""
"If you move calibre.app, you have to re-install the command line tools."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:62
msgid "Max. simultaneous conversion/news download jobs:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:63
msgid "Limit the max. simultaneous jobs to the available CPU &cores"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:64
msgid "Debug &device detection"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:65
+msgid "Get information to setup the &user defined device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:66
msgid "Open calibre &configuration directory"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:67
msgid "&Install command line tools"
msgstr ""
@@ -11972,7 +11496,7 @@ msgid "Search for plugin"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
msgid "No matches"
msgstr ""
@@ -12412,10 +11936,6 @@ msgid ""
"the IP address of the computer calibre is running on."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/social.py:39
-msgid "Downloading social metadata, please wait..."
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions.py:23
msgid ""
"\n"
@@ -12770,7 +12290,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:48
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:83
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:117
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12878,7 +12398,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:123
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:114
#: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:63
msgid "Close"
@@ -12933,35 +12453,43 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:107
msgid "Get Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:114
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
msgid "Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:117
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
msgid "Stores"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:118
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:116
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
msgid "Invert"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+msgid "Open a selected book in the system's web browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+msgid "Open in &external browser"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/store/web_control.py:73
msgid ""
"This ebook is a DRMed EPUB file. You will be prompted to save this file to "
@@ -13187,10 +12715,6 @@ msgstr ""
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
-msgid "F&ind"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2106
msgid "Find the first/next matching item"
msgstr ""
@@ -14207,7 +13731,7 @@ msgstr ""
msgid "Invalid boolean query \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:51
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:55
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14218,7 +13742,7 @@ msgid ""
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:64
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:68
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14226,7 +13750,7 @@ msgid ""
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:231
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14237,7 +13761,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:244
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14245,7 +13769,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:253
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14253,7 +13777,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:262
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14261,7 +13785,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:271
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -14270,7 +13794,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:281
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -14278,7 +13802,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:290
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -14286,7 +13810,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:299
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -14294,14 +13818,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:606
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:613
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Save the output from different stages of the conversion pipeline to the "
"specified directory. Useful if you are unsure at which stage of the "
@@ -14310,7 +13834,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -14318,14 +13842,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:630
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[ Migrating old database to ebook library in %s