diff --git a/Changelog.old.yaml b/Changelog.old.yaml
index 0d556d99e0..0bdd7ba746 100644
--- a/Changelog.old.yaml
+++ b/Changelog.old.yaml
@@ -478,7 +478,7 @@
type: major
description : >
"You can now save your frequently used searches and access them with a single click. For details
- see http://calibre-ebook.com/user_manual/gui.html#search-sort"
+ see http://manual.calibre-ebook.com/gui.html#search-sort"
- title: "Add searching by date/published date"
tickets: [5244]
diff --git a/Changelog.yaml b/Changelog.yaml
index cc4947fbbf..ee3d240115 100644
--- a/Changelog.yaml
+++ b/Changelog.yaml
@@ -19,6 +19,134 @@
# new recipes:
# - title:
+- version: 0.8.3
+ date: 2011-05-27
+
+ new features:
+ - title: "Allow the coloring of columns in the book list."
+ description: "You can either create a custom column with a fixed set of values and assign a color to each value, or you can use the calibre template language to color any column in arbitrarily powerful ways. For example, you can have the title appear in red if the book has a particular tag."
+ type: major
+
+ - title: "Support for the Nook Simple Reader"
+
+ - title: "Get Books, new stores: Virtualo, lulu.net"
+
+ - title: "A store chooser dialog for Get Books (click the little preferences icon at the bottom of the Get Books screen)."
+
+ - title: "Add a merge_lists, and, or, not template functions to the calibre template language"
+
+ - title: "EPUB Output: Change any white-space:pre declarations in the CSS to pre-wrap to accomodate readers that cannot scroll horizontally."
+ tickets: [786722]
+
+ - title: "Windows installer: Remember and use previous installation folder when upgrading. Note that this will work for future upgrades, after this one."
+
+ bug fixes:
+ - title: "MOBI Output: Fix hidden tags with id attributes also hiding their trailing text"
+ tickets: [788570]
+
+ - title: "Fix switching from one news source to another via a search not saving changes to the scheduling of the first source"
+ tickets: [774849]
+
+ - title: "Dont allow user to use non email usernames when setting up Hotmail or Gmail accounts"
+
+ - title: "Amazon metadata download: Use separate identifiers for country specific downloads so that the links to Amazon in the Book details panel work when downloading metadata from country specific amazon websites."
+ tickets: [786146]
+
+ - title: "Nicer error message when user attempts to set title/author via Edit metadata dialog and one of the files is open in another program."
+
+ - title: "Fix {id} not working in send to device templates"
+
+ - title: "Windows: If creating a bytestring temp dir fails, create a unicode one and hope the rest of calibre can handle it"
+
+ - title: "Get Books: Fix some results from Amazon missing."
+ tickets: [785962]
+
+ improved recipes:
+ - Kathermini
+ - Faz.net
+ - The Washington Post
+ - El Mundo
+ - Marca
+ - The Nation
+
+ new recipes:
+ - title: Various German news sources
+ author: schuster
+
+ - title: "George R. R. Martin's Blog"
+ author: Darko Miletic
+
+ - title: "Focus (DE) and National Geographic"
+ auhtor: Anonymous
+
+
+
+- version: 0.8.2
+ date: 2011-05-20
+
+ new features:
+ - title: "Various new ebook sources added to Get Books: Google Books, O'Reilly, archive.org, some Polish ebooks stores, etc."
+
+ - title: "Amazon metadata download: Allow user to configure Amazon plugin to use any of the US, UK, German, French and Italian Amazon websites"
+
+ - title: "When deleting large numbers of books, give the user the option to skip the Recycle Bin, since sending lots of files to the recycle bin can be very slow."
+ tickets: [784987]
+
+ - title: "OS X: The unified title+toolbar was disabled as it had various bugs. If you really want it you can turn it on again via Preferences->Tweaks, but be aware that you will see problems like the calibre windowd being too wide, weird animations when a device is detected, etc."
+
+ - title: "Add a tweak that controls what words are treated as suffixes when generating an author sort string from an author name."
+
+ - title: "Get Books: Store last few searches in history"
+
+ bug fixes:
+ - title: "Fix a crash when a device is connected/disconnected while a modal dialog opened from the toolbar is visible"
+ tickets: [780484]
+
+ - title: "Fix incorrect results from ebooks.com when searching via Get Books"
+
+ - title: "Metadata plugboards: Add prioritization scheme to allow for using different settings for different locations"
+ tickets: [783229]
+
+ - title: "Fix manage authors dialog too wide"
+ tickets: [783065]
+
+ - title: "Fix multiple bracket types in author names not handled correctly when generating author sort string"
+ tickets: [782551]
+
+ - title: "MOBI Input: Don't error out when detecting TOC structure if one of the elements has an invalid margin unit"
+
+ - title: "More fixes for japanese language calibre on windows"
+ tickets: [782408]
+
+ - title: "Linux binaries: Always use either Cleanlook or Plastique styles for the GUI if no style can be loaded from the host computer"
+
+ improved recipes:
+ - Newsweek
+ - Economist
+ - Dvhn
+ - United Daily
+ - Dagens Nyheter
+ - GoComics
+ - faz.net
+ - golem.de
+
+ new recipes:
+ - title: National Geographic
+ author: gagsays
+
+ - title: Various German news sources
+ author: schuster
+
+ - title: Dilema Veche
+ author: Silviu Cotoara
+
+ - title: "Glamour, Good to Know, Good Housekeeping and Men's Health"
+ author: Anonymous
+
+ - title: "Financial Sense and iProfessional"
+ author: Darko Miletic
+
+
- version: 0.8.1
date: 2011-05-13
@@ -456,7 +584,7 @@
- title: "FB2 Output: Option to set the FB2 genre explicitly."
tickets: [743178]
- - title: "Plugin developers: calibre now has a new plugin API, see http://calibre-ebook.com/user_manual/creating_plugins.html. Your existing plugins should continue to work, but it would be good to test them to make sure."
+ - title: "Plugin developers: calibre now has a new plugin API, see http://manual.calibre-ebook.com/creating_plugins.html. Your existing plugins should continue to work, but it would be good to test them to make sure."
bug fixes:
- title: "Fix text color in the search bar set to black instead of the system font color"
@@ -841,7 +969,7 @@
new features:
- title: "Tag Browser: Support the creation of nested User Categories"
- description: "See http://calibre-ebook.com/user_manual/gui.html#tag-browser for details"
+ description: "See http://manual.calibre-ebook.com/gui.html#tag-browser for details"
type: major
- title: "Disable Kent District Library plugin to download series information. The website could not handle the load calibre's 2 million users put on it. You can manually re-enable it if you really want series information, but it is very slow"
@@ -3714,7 +3842,7 @@
type: major
description: >
"You can now change the icons used in the User Interface and other static resources. Details on how to
- do this are at: http://calibre-ebook.com/user_manual/customize.html#overriding-icons-templates-etcetera"
+ do this are at: http://manual.calibre-ebook.com/customize.html#overriding-icons-templates-etcetera"
- title: "Split the 'Send to device' button into two buttons, 'Connect/share' and 'Send to device'. The new 'Send to device' button will now only be available when a device is connected."
diff --git a/INSTALL b/INSTALL
index 93b119b2e1..0520ef1e38 100644
--- a/INSTALL
+++ b/INSTALL
@@ -3,7 +3,7 @@ calibre supports installation from source, only on Linux.
Note that you *do not* need to install from source to hack on
the calibre source code. To get started with calibre development,
use a normal calibre install and follow the instructions at
-http://calibre-ebook.com/user_manual/develop.html
+http://manual.calibre-ebook.com/develop.html
On Linux, there are two kinds of installation from source possible.
Note that both kinds require lots of dependencies as well as a
diff --git a/README b/README
index b518e977c8..2ffab4e2f6 100644
--- a/README
+++ b/README
@@ -6,8 +6,8 @@ reading. It is cross platform, running on Linux, Windows and OS X.
For screenshots: https://calibre-ebook.com/demo
-For installation/usage instructions please see
-http://calibre-ebook.com/user_manual
+For usage instructions please see
+http://manual.calibre-ebook.com
For source code access:
bzr branch lp:calibre
diff --git a/icons/favicon.ico b/icons/favicon.ico
new file mode 100644
index 0000000000..433b4f2d51
Binary files /dev/null and b/icons/favicon.ico differ
diff --git a/recipes/aachener_nachrichten.recipe b/recipes/aachener_nachrichten.recipe
new file mode 100644
index 0000000000..a2294fc472
--- /dev/null
+++ b/recipes/aachener_nachrichten.recipe
@@ -0,0 +1,42 @@
+from calibre.web.feeds.recipes import BasicNewsRecipe
+class AdvancedUserRecipe(BasicNewsRecipe):
+
+ title = u'Aachener Nachrichten'
+ __author__ = 'schuster'
+ oldest_article = 1
+ max_articles_per_feed = 100
+ use_embedded_content = False
+ language = 'de'
+ remove_javascript = True
+ cover_url = 'http://www.an-online.de/einwaage/images/an_logo.png'
+ masthead_url = 'http://www.an-online.de/einwaage/images/an_logo.png'
+ extra_css = '''
+ .fliesstext_detail:{margin-bottom:10%;}
+ .headline_1:{margin-bottom:25%;}
+ b{font-family:Arial,Helvetica,sans-serif; font-weight:200;font-size:large;}
+ a{font-family:Arial,Helvetica,sans-serif; font-weight:400;font-size:large;}
+ ll{font-family:Arial,Helvetica,sans-serif; font-weight:100;font-size:large;}
+ h4{font-family:Arial,Helvetica,sans-serif; font-weight:normal;font-size:small;}
+ img {min-width:300px; max-width:600px; min-height:300px; max-height:800px}
+ dd{font-family:Arial,Helvetica,sans-serif;font-size:large;}
+ body{font-family:Helvetica,Arial,sans-serif;font-size:small;}
+ '''
+
+
+
+ keep_only_tags = [
+ dict(name='span', attrs={'class':['fliesstext_detail', 'headline_1', 'autor_detail']}),
+ dict(id=['header-logo'])
+ ]
+
+ feeds = [(u'Euregio', u'http://www.an-online.de/an/rss/Euregio.xml'),
+ (u'Aachen', u'http://www.an-online.de/an/rss/Aachen.xml'),
+ (u'Nordkreis', u'http://www.an-online.de/an/rss/Nordkreis.xml'),
+ (u'Düren', u'http://www.an-online.de/an/rss/Dueren.xml'),
+ (u'Eiffel', u'http://www.an-online.de/an/rss/Eifel.xml'),
+ (u'Eschweiler', u'http://www.an-online.de/an/rss/Eschweiler.xml'),
+ (u'Geilenkirchen', u'http://www.an-online.de/an/rss/Geilenkirchen.xml'),
+ (u'Heinsberg', u'http://www.an-online.de/an/rss/Heinsberg.xml'),
+ (u'Jülich', u'http://www.an-online.de/an/rss/Juelich.xml'),
+ (u'Stolberg', u'http://www.an-online.de/an/rss/Stolberg.xml'),
+ (u'Ratgebenr', u'http://www.an-online.de/an/rss/Ratgeber.xml')]
diff --git a/recipes/alt_om_herning.recipe b/recipes/alt_om_herning.recipe
new file mode 100644
index 0000000000..c60d142a85
--- /dev/null
+++ b/recipes/alt_om_herning.recipe
@@ -0,0 +1,43 @@
+__license__ = 'GPL v3'
+__copyright__ = '2011, Rasmus Lauritsen ' +
+ _('Set this box to indicate that the two conditions must both '
+ 'be true to return the "color if value found". For example, you '
+ 'can check if two tags are present, if the book has a tag '
+ 'and a #read custom column is checked, or if a book has '
+ 'some tag and has a particular format.'))
+ l.addWidget(h, 0, 0, 1, 1)
+
+ h = QLabel(_('Column'))
+ h.setAlignment(Qt.AlignCenter)
+ l.addWidget(h, 0, 1, 1, 1)
+
+ h = QLabel(_('Not'))
+ h.setToolTip(' ' +
+ _('Set this box to indicate that the value must not match '
+ 'to return the "color if value found". For example, you '
+ 'can check if a tag does not exist by entering that tag '
+ 'and checking this box. You can check if tags are empty by '
+ 'checking this box, entering .* (period asterisk) for the text, '
+ 'then checking the RE box. The .* regular expression matches '
+ 'anything, so if this box is checked, it matches nothing. '
+ 'This box is particularly useful when using the AND box.'))
+ h.setAlignment(Qt.AlignCenter)
+ l.addWidget(h, 0, 2, 1, 1)
+
+ h = QLabel(_('Values (see the popup help for more information)'))
+ h.setAlignment(Qt.AlignCenter)
+ h.setToolTip(' ' +
+ _('You can enter more than one value per box, separated by commas. '
+ 'The comparison ignores letter case. Special note: you can '
+ 'enter at most one author.
'), lambda match: '')]
+
+ keep_only_tags = [dict(name='div', attrs={'class':'article'})]
+
+ remove_tags = [
+ dict(name='p',attrs={'class':'meta links'}),
+ dict(name='div',attrs={'class':'float-right'}),
+ dict(name='span',attrs={'class':'article-link-id'})
+ ]
+
+ feeds = [
+ (u'Seneste nyheder' , u'http://www.version2.dk/feeds/nyheder')
+ ,(u'Forretningssoftware' , u'http://www.version2.dk/feeds/forretningssoftware')
+ ,(u'Internet & styresystemer' , u'http://www.version2.dk/feeds/styresystemer')
+ ,(u'It-arkitektur' , u'http://www.version2.dk/feeds/it-arkitektur')
+ ,(u'It-styring & outsourcing' , u'http://www.version2.dk/feeds/it-styring')
+ ,(u'Job & karriere' , u'http://www.version2.dk/feeds/karriere')
+ ,(u'Mobil it & tele' , u'http://www.version2.dk/feeds/tele')
+ ,(u'Server/storage & netværk' , u'http://www.version2.dk/feeds/server-storage')
+ ,(u'Sikkerhed' , u'http://www.version2.dk/feeds/sikkerhed')
+ ,(u'Softwareudvikling' , u'http://www.version2.dk/feeds/softwareudvikling')
+ ]
diff --git a/recipes/wash_post.recipe b/recipes/wash_post.recipe
index 0ca6410b4e..61a469b47d 100644
--- a/recipes/wash_post.recipe
+++ b/recipes/wash_post.recipe
@@ -1,64 +1,75 @@
+__license__ = 'GPL v3'
+__copyright__ = '2011, Darko Miletic
'
+ 'A value can be a regular expression. Check the box to turn '
+ 'them on. When using regular expressions, note that the wizard '
+ 'puts anchors (^ and $) around the expression, so you '
+ 'must ensure your expression matches from the beginning '
+ 'to the end of the column you are checking.
'
+ 'Regular expression examples:') + '' +
+ _('
.* matches anything in the column. No '
+ 'empty values are checked, so you don\'t need to worry about '
+ 'empty stringsA.* matches anything beginning with A.*mystery.* matches anything containing '
+ 'the word "mystery"
' + + _('Check this box if the values box contains regular expressions') + '
') + l.addWidget(c, 0, 4, 1, 1) + + c = QLabel(_('Color if value found')) + c.setToolTip('' + + _('At least one of the two color boxes must have a value. Leave ' + 'one color box empty if you want the template to use the next ' + 'line in this wizard. If both boxes are filled in, the rest of ' + 'the lines in this wizard will be ignored.') + '
') + l.addWidget(c, 0, 5, 1, 1) + c = QLabel(_('Color if value not found')) + c.setToolTip('' + + _('This box is usually filled in only on the last test. If it is ' + 'filled in before the last test, then the color for value found box ' + 'must be empty or all the rest of the tests will be ignored.') + '
') + l.addWidget(c, 0, 6, 1, 1) + + self.andboxes = [] + self.notboxes = [] + self.tagboxes = [] + self.colorboxes = [] + self.nfcolorboxes = [] + self.reboxes = [] + self.colboxes = [] + self.colors = [unicode(s) for s in list(QColor.colorNames())] + self.colors.insert(0, '') + + maxlines = 10 + for i in range(1, maxlines+1): + ab = QCheckBox(self) + self.andboxes.append(ab) + if i != maxlines: + # let the last box float in space + l.addWidget(ab, i, 0, 2, 1) + ab.stateChanged.connect(partial(self.and_box_changed, line=i-1)) + else: + ab.setVisible(False) + + w = QComboBox(self) + w.addItems(self.columns) + l.addWidget(w, i, 1, 1, 1) + self.colboxes.append(w) + + nb = QCheckBox(self) + self.notboxes.append(nb) + l.addWidget(nb, i, 2, 1, 1) + + tb = MultiCompleteLineEdit(self) + tb.set_separator(', ') + self.tagboxes.append(tb) + l.addWidget(tb, i, 3, 1, 1) + w.currentIndexChanged[str].connect(partial(self.column_changed, valbox=tb)) + + w = QCheckBox(self) + self.reboxes.append(w) + l.addWidget(w, i, 4, 1, 1) + + w = QComboBox(self) + w.addItems(self.colors) + self.colorboxes.append(w) + l.addWidget(w, i, 5, 1, 1) + + w = QComboBox(self) + w.addItems(self.colors) + self.nfcolorboxes.append(w) + l.addWidget(w, i, 6, 1, 1) + + if txt: + lines = txt.split('\n')[3:] + i = 0 + for line in lines: + if line.startswith('#'): + vals = line[1:].split(':|:') + if len(vals) == 2: + t, c = vals + nc = '' + re = False + f = 'tags' + a = False + n = False + else: + t,c,f,nc,re,a,n = vals + try: + self.colboxes[i].setCurrentIndex(self.colboxes[i].findText(f)) + self.colorboxes[i].setCurrentIndex( + self.colorboxes[i].findText(c)) + self.nfcolorboxes[i].setCurrentIndex( + self.nfcolorboxes[i].findText(nc)) + self.tagboxes[i].setText(t) + self.reboxes[i].setChecked(re == '2') + self.andboxes[i].setChecked(a == '2') + self.notboxes[i].setChecked(n == '2') + i += 1 + except: + pass + + w = QLabel(_('Preview')) + l.addWidget(w, 99, 1, 1, 1) + w = self.test_box = QLineEdit(self) + w.setReadOnly(True) + l.addWidget(w, 99, 3, 1, 1) + w = QPushButton(_('Test')) + l.addWidget(w, 99, 5, 1, 1) + w.clicked.connect(self.preview) + + bb = QDialogButtonBox(QDialogButtonBox.Ok|QDialogButtonBox.Cancel, parent=self) + l.addWidget(bb, 100, 3, 1, 2) + bb.accepted.connect(self.accepted) + bb.rejected.connect(self.reject) + self.template = '' + + def preview(self): + if not self.generate_program(): + return + t = composite_formatter.safe_format(self.template, self.mi, + _('EXCEPTION'), self.mi) + self.test_box.setText(t) + + def column_changed(self, s, valbox=None): + k = unicode(s) + if k in self.completion_values: + valbox.update_items_cache(self.completion_values[k]['v']) + if self.completion_values[k]['m']: + valbox.set_separator(', ') + else: + valbox.set_separator(None) + else: + valbox.update_items_cache([]) + valbox.set_separator(None) + + def generate_program(self): + res = ("program:\n#tag wizard -- do not directly edit\n" + " first_non_empty(\n") + lines = [] + was_and = False + had_line = False + + line = 0 + for tb, cb, fb, nfcb, reb, ab, nb in zip( + self.tagboxes, self.colorboxes, self.colboxes, + self.nfcolorboxes, self.reboxes, self.andboxes, self.notboxes): + f = unicode(fb.currentText()) + if not f: + continue + m = self.completion_values[f]['m'] + c = unicode(cb.currentText()).strip() + nfc = unicode(nfcb.currentText()).strip() + re = reb.checkState() + a = ab.checkState() + n = nb.checkState() + line += 1 + + if n == 2: + tval = '' + fval = '1' + else: + tval = '1' + fval = '' + + if m: + tags = [t.strip() for t in unicode(tb.text()).split(',') if t.strip()] + if re == 2: + tags = '$|^'.join(tags) + else: + tags = ','.join(tags) + else: + tags = unicode(tb.text()).strip() + if f == 'authors': + tags.replace(',', '|') + + if (tags or f) and not (tags and f and (a == 2 or c)): + error_dialog(self, _('Invalid line'), + _('Line number {0} is not valid').format(line), + show=True, show_copy_button=False) + return False + + if c not in self.colors: + error_dialog(self, _('Invalid color'), + _('The color {0} is not valid').format(c), + show=True, show_copy_button=False) + return False + if nfc not in self.colors: + error_dialog(self, _('Invalid color'), + _('The color {0} is not valid').format(nfc), + show=True, show_copy_button=False) + return False + + if not was_and: + if had_line: + lines[-1] += ',' + had_line = True + lines.append(" test(and(") + else: + lines[-1] += ',' + + if re == 2: + if m: + lines.append(" in_list(field('{1}'), ',', '^{0}$', '{2}', '{3}')".\ + format(tags, f, tval, fval)) + else: + lines.append(" contains(field('{1}'), '{0}', '{2}', '{3}')".\ + format(tags, f, tval, fval)) + else: + if m: + lines.append(" str_in_list(field('{1}'), ',', '{0}', '{2}', '{3}')".\ + format(tags, f, tval, fval)) + else: + lines.append(" strcmp(field('{1}'), '{0}', '{3}', '{2}', '{3}')".\ + format(tags, f, tval, fval)) + if a == 2: + was_and = True + else: + was_and = False + lines.append(" ), '{0}', '{1}')".format(c, nfc)) + + res += '\n'.join(lines) + res += ')\n' + self.template = res + res = '' + for tb, cb, fb, nfcb, reb, ab, nb in zip( + self.tagboxes, self.colorboxes, self.colboxes, + self.nfcolorboxes, self.reboxes, self.andboxes, self.notboxes): + t = unicode(tb.text()).strip() + if t.endswith(','): + t = t[:-1] + c = unicode(cb.currentText()).strip() + f = unicode(fb.currentText()) + nfc = unicode(nfcb.currentText()).strip() + re = unicode(reb.checkState()) + a = unicode(ab.checkState()) + n = unicode(nb.checkState()) + if f and t and (a == '2' or c): + res += '#' + t + ':|:' + c + ':|:' + f + ':|:' + \ + nfc + ':|:' + re + ':|:' + a + ':|:' + n + '\n' + self.template += res + return True + + def and_box_changed(self, state, line=None): + if state == 2: + self.colorboxes[line].setCurrentIndex(0) + self.colorboxes[line].setEnabled(False) + self.nfcolorboxes[line].setCurrentIndex(0) + self.nfcolorboxes[line].setEnabled(False) + else: + self.colorboxes[line].setEnabled(True) + self.nfcolorboxes[line].setEnabled(True) + + def accepted(self): + if self.generate_program(): + self.accept() + else: + self.template = '' diff --git a/src/calibre/gui2/dialogs/user_profiles.ui b/src/calibre/gui2/dialogs/user_profiles.ui index 7631c74768..6493846c2b 100644 --- a/src/calibre/gui2/dialogs/user_profiles.ui +++ b/src/calibre/gui2/dialogs/user_profiles.ui @@ -386,7 +386,7 @@ p, li { white-space: pre-wrap; }' + ', '.join(all_colors) + '
') self.exec_() def shortcut_activated(self, url): @@ -167,13 +174,26 @@ def datatype_changed(self, *args): col_type = None for x in ('box', 'default_label', 'label'): getattr(self, 'date_format_'+x).setVisible(col_type == 'datetime') + getattr(self, 'number_format_'+x).setVisible(col_type in ['int', 'float']) for x in ('box', 'default_label', 'label', 'sort_by', 'sort_by_label', 'make_category'): getattr(self, 'composite_'+x).setVisible(col_type in ['composite', '*composite']) - for x in ('box', 'default_label', 'label'): + for x in ('box', 'default_label', 'label', 'colors', 'colors_label'): getattr(self, 'enum_'+x).setVisible(col_type == 'enumeration') self.use_decorations.setVisible(col_type in ['text', 'composite', 'enumeration']) self.is_names.setVisible(col_type == '*text') + if col_type == 'int': + self.number_format_box.setToolTip('' +
+ _('Examples: The format {0:0>4d} '
+ 'gives a 4-digit number with leading zeros. The format '
+ '{0:d} days prints the number then the word "days"')+ '
' +
+ _('Examples: The format {0:.1f} gives a floating '
+ 'point number with 1 digit after the decimal point. The format '
+ 'Price: $ {0:,.2f} prints '
+ '"Price $ " then displays the number with 2 digits '
+ 'after the decimal point and thousands separated by commas.') + '
' + + _('Here you can specify coloring rules for columns shown in the ' + 'library view. Choose the column you wish to color, then ' + 'supply a template that specifies the color to use based on ' + 'the values in the column. There is a ' + '' + 'tutorial on using templates.') + + '
' + + _('If you want to color a field based on contents of columns, ' + 'then click the button next to an empty line to open the wizard. ' + 'It will build a template for you. You can later edit that ' + 'template with the same wizard. This is by far the easiest ' + 'way to specify a template.') + + '
' + + _('If you manually construct a template, then the template must ' + 'evaluate to a valid color name shown in the color names box.' + 'You can use any legal template expression. ' + 'For example, you can set the title to always display in ' + 'green using the template "green" (without the quotes). ' + 'To show the title in the color named in the custom column ' + '#column, use "{#column}". To show the title in blue if the ' + 'custom column #column contains the value "foo", in red if the ' + 'column contains the value "bar", otherwise in black, use ' + '
{#column:switch(foo,blue,bar,red,black)}'
+ 'To show the title in blue if the book has the exact tag '
+ '"Science Fiction", red if the book has the exact tag '
+ '"Mystery", or black if the book has neither tag, use'
+ "program: \n"
+ " t = field('tags'); \n"
+ " first_non_empty(\n"
+ " in_list(t, ',', '^Science Fiction$', 'blue', ''), \n"
+ " in_list(t, ',', '^Mystery$', 'red', 'black'))"
+ 'To show the title in green if it has one format, blue if it '
+ 'two formats, and red if more, use'
+ "program:cmp(count(field('formats'),','), 2, 'green', 'blue', 'red')") +
+ '' + + _('You can access a multi-line template editor from the ' + 'context menu (right-click).') + '
' + + _('Note: if you want to color a "custom column with a fixed set ' + 'of values", it is often easier to specify the ' + 'colors in the column definition dialog. There you can ' + 'provide a color for each value without using a template.')+ '
') + self.color_help_scrollArea.setVisible(False) + self.color_help_button.clicked.connect(self.change_help_text) + self.colors_scrollArea.setVisible(False) + self.colors_label.setVisible(False) + self.colors_button.clicked.connect(self.change_colors_text) + + choices = db.field_metadata.displayable_field_keys() + choices.sort(key=sort_key) + choices.insert(0, '') + self.column_color_count = db.column_color_count+1 + + mi=None + try: + idx = gui.library_view.currentIndex().row() + mi = db.get_metadata(idx, index_is_id=False) + except: + pass + + l = self.column_color_layout + for i in range(1, self.column_color_count): + ccn = QComboBox(parent=self) + setattr(self, 'opt_column_color_name_'+str(i), ccn) + l.addWidget(ccn, i, 0, 1, 1) + + wtb = QToolButton(parent=self) + setattr(self, 'opt_column_color_wizard_'+str(i), wtb) + wtb.setIcon(QIcon(I('wizard.png'))) + l.addWidget(wtb, i, 1, 1, 1) + + ttb = QToolButton(parent=self) + setattr(self, 'opt_column_color_tpledit_'+str(i), ttb) + ttb.setIcon(QIcon(I('edit_input.png'))) + l.addWidget(ttb, i, 2, 1, 1) + + tpl = TemplateLineEditor(parent=self) + setattr(self, 'opt_column_color_template_'+str(i), tpl) + tpl.textChanged.connect(partial(self.tpl_edit_text_changed, ctrl=i)) + tpl.set_db(db) + tpl.set_mi(mi) + l.addWidget(tpl, i, 3, 1, 1) + + wtb.clicked.connect(tpl.tag_wizard) + ttb.clicked.connect(tpl.open_editor) + + r('column_color_name_'+str(i), db.prefs, choices=choices) + r('column_color_template_'+str(i), db.prefs) + txt = db.prefs.get('column_color_template_'+str(i), None) + + wtb.setEnabled(tpl.enable_wizard_button(txt)) + ttb.setEnabled(not tpl.enable_wizard_button(txt) or not txt) + + all_colors = [unicode(s) for s in list(QColor.colorNames())] + self.colors_box.setText(', '.join(all_colors)) + + def change_help_text(self): + self.color_help_scrollArea.setVisible(not self.color_help_scrollArea.isVisible()) + + def change_colors_text(self): + self.colors_scrollArea.setVisible(not self.colors_scrollArea.isVisible()) + self.colors_label.setVisible(not self.colors_label.isVisible()) + + def tpl_edit_text_changed(self, ign, ctrl=None): + tpl = getattr(self, 'opt_column_color_template_'+str(ctrl)) + txt = unicode(tpl.text()) + wtb = getattr(self, 'opt_column_color_wizard_'+str(ctrl)) + ttb = getattr(self, 'opt_column_color_tpledit_'+str(ctrl)) + wtb.setEnabled(tpl.enable_wizard_button(txt)) + ttb.setEnabled(not tpl.enable_wizard_button(txt) or not txt) + tpl.setFocus() + def initialize(self): ConfigWidgetBase.initialize(self) font = gprefs['font'] @@ -226,6 +341,12 @@ def change_font(self, *args): self.changed_signal.emit() def commit(self, *args): + for i in range(1, self.column_color_count): + col = getattr(self, 'opt_column_color_name_'+str(i)) + tpl = getattr(self, 'opt_column_color_template_'+str(i)) + if not col.currentIndex() or not unicode(tpl.text()).strip(): + col.setCurrentIndex(0) + tpl.setText('') rr = ConfigWidgetBase.commit(self, *args) if self.current_font != self.initial_font: gprefs['font'] = (self.current_font[:4] if self.current_font else @@ -238,6 +359,7 @@ def commit(self, *args): return rr def refresh_gui(self, gui): + gui.library_view.model().set_color_templates() self.update_font_display() gui.tags_view.reread_collapse_parameters() gui.library_view.refresh_book_details() diff --git a/src/calibre/gui2/preferences/look_feel.ui b/src/calibre/gui2/preferences/look_feel.ui index 244b811cbd..def1bdd41c 100644 --- a/src/calibre/gui2/preferences/look_feel.ui +++ b/src/calibre/gui2/preferences/look_feel.ui @@ -7,7 +7,7 @@' + _('This store is currently diabled and cannot be used in other parts of calibre.') + '
') + else: + return QVariant('' + _('This store is currently enabled and can be used in other parts of calibre.') + '
') + elif col == 1: + return QVariant('%s
' % result.description) + elif col == 2: + if result.drm_free_only: + return QVariant('' + _('This store only distributes ebooks with DRM.') + '
') + else: + return QVariant('' + _('This store distributes ebooks with DRM. It may have some titles without DRM, but you will need to check on a per title basis.') + '
') + elif col == 3: + return QVariant('' + _('This store is headquartered in %s. This is a good indication of what market the store caters to. However, this does not necessarily mean that the store is limited to that market only.') % result.headquarters + '
') + elif col == 4: + if result.affiliate: + return QVariant('' + _('Buying from this store supports the calibre developer: %s.') % result.author + '
') + elif col == 5: + return QVariant('' + _('This store distributes ebooks in the following formats: %s') % ', '.join(result.formats) + '
') + return NONE + + def setData(self, index, data, role): + if not index.isValid(): + return False + row, col = index.row(), index.column() + if col == 0: + if data.toBool(): + enable_plugin(self.get_plugin(index)) + else: + disable_plugin(self.get_plugin(index)) + self.dataChanged.emit(self.index(index.row(), 0), self.index(index.row(), self.columnCount() - 1)) + return True + + def flags(self, index): + if index.column() == 0: + return QAbstractItemModel.flags(self, index) | Qt.ItemIsUserCheckable + return QAbstractItemModel.flags(self, index) + + def data_as_text(self, match, col): + text = '' + if col == 0: + text = 'b' if is_disabled(match) else 'a' + elif col == 1: + text = match.name + elif col == 2: + text = 'a' if getattr(match, 'drm_free_only', True) else 'b' + elif col == 3: + text = getattr(match, 'headquarters', '') + elif col == 4: + text = 'a' if getattr(match, 'affiliate', False) else 'b' + return text + + def sort(self, col, order, reset=True): + self.sort_col = col + self.sort_order = order + if not self.matches: + return + descending = order == Qt.DescendingOrder + self.matches.sort(None, + lambda x: sort_key(unicode(self.data_as_text(x, col))), + descending) + if reset: + self.reset() + + +class SearchFilter(SearchQueryParser): + + USABLE_LOCATIONS = [ + 'all', + 'affiliate', + 'description', + 'drm', + 'enabled', + 'format', + 'formats', + 'headquarters', + 'name', + ] + + def __init__(self, all_plugins=[]): + SearchQueryParser.__init__(self, locations=self.USABLE_LOCATIONS) + self.srs = set(all_plugins) + + def universal_set(self): + return self.srs + + def get_matches(self, location, query): + location = location.lower().strip() + if location == 'formats': + location = 'format' + + matchkind = CONTAINS_MATCH + if len(query) > 1: + if query.startswith('\\'): + query = query[1:] + elif query.startswith('='): + matchkind = EQUALS_MATCH + query = query[1:] + elif query.startswith('~'): + matchkind = REGEXP_MATCH + query = query[1:] + if matchkind != REGEXP_MATCH: ### leave case in regexps because it can be significant e.g. \S \W \D + query = query.lower() + + if location not in self.USABLE_LOCATIONS: + return set([]) + matches = set([]) + all_locs = set(self.USABLE_LOCATIONS) - set(['all']) + locations = all_locs if location == 'all' else [location] + q = { + 'affiliate': lambda x: x.affiliate, + 'description': lambda x: x.description.lower(), + 'drm': lambda x: not x.drm_free_only, + 'enabled': lambda x: not is_disabled(x), + 'format': lambda x: ','.join(x.formats).lower(), + 'headquarters': lambda x: x.headquarters.lower(), + 'name': lambda x : x.name.lower(), + } + q['formats'] = q['format'] + for sr in self.srs: + for locvalue in locations: + accessor = q[locvalue] + if query == 'true': + if locvalue in ('affiliate', 'drm', 'enabled'): + if accessor(sr) == True: + matches.add(sr) + elif accessor(sr) is not None: + matches.add(sr) + continue + if query == 'false': + if locvalue in ('affiliate', 'drm', 'enabled'): + if accessor(sr) == False: + matches.add(sr) + elif accessor(sr) is None: + matches.add(sr) + continue + # this is bool, so can't match below + if locvalue in ('affiliate', 'drm', 'enabled'): + continue + try: + ### Can't separate authors because comma is used for name sep and author sep + ### Exact match might not get what you want. For that reason, turn author + ### exactmatch searches into contains searches. + if locvalue == 'name' and matchkind == EQUALS_MATCH: + m = CONTAINS_MATCH + else: + m = matchkind + + if locvalue == 'format': + vals = accessor(sr).split(',') + else: + vals = [accessor(sr)] + if _match(query, vals, m): + matches.add(sr) + break + except ValueError: # Unicode errors + import traceback + traceback.print_exc() + return matches diff --git a/src/calibre/gui2/store/config/chooser/results_view.py b/src/calibre/gui2/store/config/chooser/results_view.py new file mode 100644 index 0000000000..10dff4bcdb --- /dev/null +++ b/src/calibre/gui2/store/config/chooser/results_view.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- + +from __future__ import (unicode_literals, division, absolute_import, print_function) + +__license__ = 'GPL 3' +__copyright__ = '2011, John Schember%s
' % result.title) @@ -182,6 +198,9 @@ def data(self, index, role): return QVariant('' + _('The DRM status of this book could not be determined. There is a very high likelihood that this book is actually DRM restricted.') + '
') elif col == 4: return QVariant('%s
' % result.formats) + elif col == 5: + if result.affiliate: + return QVariant('' + _('Buying from this store supports the calibre developer: %s.') % result.plugin_author + '
') elif role == Qt.SizeHintRole: return QSize(64, 64) return NONE @@ -201,6 +220,11 @@ def data_as_text(self, result, col): text = 'c' elif col == 4: text = result.store_name + elif col == 5: + if result.affiliate: + text = 'a' + else: + text = 'b' return text def sort(self, col, order, reset=True): @@ -229,6 +253,7 @@ class SearchFilter(SearchQueryParser): USABLE_LOCATIONS = [ 'all', + 'affiliate', 'author', 'authors', 'cover', @@ -279,6 +304,7 @@ def get_matches(self, location, query): all_locs = set(self.USABLE_LOCATIONS) - set(['all']) locations = all_locs if location == 'all' else [location] q = { + 'affiliate': attrgetter('affiliate'), 'author': lambda x: x.author.lower(), 'cover': attrgetter('cover_url'), 'drm': attrgetter('drm'), @@ -293,23 +319,35 @@ def get_matches(self, location, query): for locvalue in locations: accessor = q[locvalue] if query == 'true': - if locvalue == 'drm': + # True/False. + if locvalue == 'affiliate': + if accessor(sr): + matches.add(sr) + # Special that are treated as True/False. + elif locvalue == 'drm': if accessor(sr) == SearchResult.DRM_LOCKED: matches.add(sr) + # Testing for something or nothing. else: if accessor(sr) is not None: matches.add(sr) continue if query == 'false': - if locvalue == 'drm': + # True/False. + if locvalue == 'affiliate': + if not accessor(sr): + matches.add(sr) + # Special that are treated as True/False. + elif locvalue == 'drm': if accessor(sr) == SearchResult.DRM_UNLOCKED: matches.add(sr) + # Testing for something or nothing. else: if accessor(sr) is None: matches.add(sr) continue - # this is bool, so can't match below - if locvalue == 'drm': + # this is bool or treated as bool, so can't match below. + if locvalue in ('affiliate', 'drm'): continue try: ### Can't separate authors because comma is used for name sep and author sep diff --git a/src/calibre/gui2/store/search/search.py b/src/calibre/gui2/store/search/search.py index f9ac45e707..e1ad24943d 100644 --- a/src/calibre/gui2/store/search/search.py +++ b/src/calibre/gui2/store/search/search.py @@ -9,54 +9,51 @@ import re from random import shuffle -from PyQt4.Qt import (Qt, QDialog, QTimer, QCheckBox, QVBoxLayout, QIcon, QWidget) +from PyQt4.Qt import (Qt, QDialog, QDialogButtonBox, QTimer, QCheckBox, QLabel, + QVBoxLayout, QIcon, QWidget, QTabWidget, QGridLayout) from calibre.gui2 import JSONConfig, info_dialog from calibre.gui2.progress_indicator import ProgressIndicator +from calibre.gui2.store.config.chooser.chooser_widget import StoreChooserWidget +from calibre.gui2.store.config.search.search_widget import StoreConfigWidget from calibre.gui2.store.search.adv_search_builder import AdvSearchBuilderDialog from calibre.gui2.store.search.download_thread import SearchThreadPool, \ CacheUpdateThreadPool from calibre.gui2.store.search.search_ui import Ui_Dialog -HANG_TIME = 75000 # milliseconds seconds -TIMEOUT = 75 # seconds - class SearchDialog(QDialog, Ui_Dialog): - def __init__(self, istores, parent=None, query=''): + def __init__(self, gui, parent=None, query=''): QDialog.__init__(self, parent) self.setupUi(self) self.config = JSONConfig('store/search') - self.search_edit.initialize('store_search_search') - # We keep a cache of store plugins and reference them by name. - self.store_plugins = istores - self.search_pool = SearchThreadPool(4) - self.cache_pool = CacheUpdateThreadPool(2) + # Loads variables that store various settings. + # This needs to be called soon in __init__ because + # the variables it sets up are used later. + self.load_settings() + + self.gui = gui + + # Setup our worker threads. + self.search_pool = SearchThreadPool(self.search_thread_count) + self.cache_pool = CacheUpdateThreadPool(self.cache_thread_count) + self.results_view.model().cover_pool.set_thread_count(self.cover_thread_count) + self.results_view.model().details_pool.set_thread_count(self.details_thread_count) + # Check for results and hung threads. self.checker = QTimer() self.progress_checker = QTimer() self.hang_check = 0 - - # Update store caches silently. - for p in self.store_plugins.values(): - self.cache_pool.add_task(p, 30) - # Add check boxes for each store so the user - # can disable searching specific stores on a - # per search basis. - stores_check_widget = QWidget() - stores_group_layout = QVBoxLayout() - stores_check_widget.setLayout(stores_group_layout) - for x in sorted(self.store_plugins.keys(), key=lambda x: x.lower()): - cbox = QCheckBox(x) - cbox.setChecked(False) - stores_group_layout.addWidget(cbox) - setattr(self, 'store_check_' + x, cbox) - stores_group_layout.addStretch() - self.stores_group.setWidget(stores_check_widget) + # Update store caches silently. + for p in self.gui.istores.values(): + self.cache_pool.add_task(p, self.timeout) + + self.store_checks = {} + self.setup_store_checks() # Set the search query self.search_edit.setText(query) @@ -64,23 +61,54 @@ def __init__(self, istores, parent=None, query=''): # Create and add the progress indicator self.pi = ProgressIndicator(self, 24) self.top_layout.addWidget(self.pi) - + self.adv_search_button.setIcon(QIcon(I('search.png'))) + self.configure.setIcon(QIcon(I('config.png'))) self.adv_search_button.clicked.connect(self.build_adv_search) self.search.clicked.connect(self.do_search) self.checker.timeout.connect(self.get_results) self.progress_checker.timeout.connect(self.check_progress) self.results_view.activated.connect(self.open_store) + self.results_view.model().total_changed.connect(self.update_book_total) self.select_all_stores.clicked.connect(self.stores_select_all) self.select_invert_stores.clicked.connect(self.stores_select_invert) self.select_none_stores.clicked.connect(self.stores_select_none) + self.configure.clicked.connect(self.do_config) self.finished.connect(self.dialog_closed) self.progress_checker.start(100) self.restore_state() + def setup_store_checks(self): + # Add check boxes for each store so the user + # can disable searching specific stores on a + # per search basis. + existing = {} + for n in self.store_checks: + existing[n] = self.store_checks[n].isChecked() + + self.store_checks = {} + + stores_check_widget = QWidget() + store_list_layout = QGridLayout() + stores_check_widget.setLayout(store_list_layout) + + icon = QIcon(I('donate.png')) + for i, x in enumerate(sorted(self.gui.istores.keys(), key=lambda x: x.lower())): + cbox = QCheckBox(x) + cbox.setChecked(existing.get(x, False)) + store_list_layout.addWidget(cbox, i, 0, 1, 1) + if self.gui.istores[x].base_plugin.affiliate: + iw = QLabel(self) + iw.setToolTip('' + _('Buying from this store supports the calibre developer: %s
') % self.gui.istores[x].base_plugin.author + '') + iw.setPixmap(icon.pixmap(16, 16)) + store_list_layout.addWidget(iw, i, 1, 1, 1) + self.store_checks[x] = cbox + store_list_layout.setRowStretch(store_list_layout.rowCount(), 10) + self.store_list.setWidget(stores_check_widget) + def build_adv_search(self): adv = AdvSearchBuilderDialog(self) if adv.exec_() == QDialog.Accepted: @@ -115,11 +143,12 @@ def do_search(self): # futher filtering. self.results_view.model().set_query(query) - # Plugins are in alphebetic order. Randomize the - # order of plugin names. This way plugins closer + # Plugins are in random order that does not change. + # Randomize the ord of the plugin names every time + # there is a search. This way plugins closer # to a don't have an unfair advantage over # plugins further from a. - store_names = self.store_plugins.keys() + store_names = self.store_checks.keys() if not store_names: return # Remove all of our internal filtering logic from the query. @@ -127,8 +156,8 @@ def do_search(self): shuffle(store_names) # Add plugins that the user has checked to the search pool's work queue. for n in store_names: - if getattr(self, 'store_check_' + n).isChecked(): - self.search_pool.add_task(query, n, self.store_plugins[n], TIMEOUT) + if self.store_checks[n].isChecked(): + self.search_pool.add_task(query, n, self.gui.istores[n], self.max_results, self.timeout) self.hang_check = 0 self.checker.start(100) self.pi.startAnimation() @@ -168,8 +197,8 @@ def save_state(self): self.config['open_external'] = self.open_external.isChecked() store_check = {} - for n in self.store_plugins: - store_check[n] = getattr(self, 'store_check_' + n).isChecked() + for k, v in self.store_checks.items(): + store_check[k] = v.isChecked() self.config['store_checked'] = store_check def restore_state(self): @@ -190,23 +219,92 @@ def restore_state(self): else: self.resize_columns() - self.open_external.setChecked(self.config.get('open_external', True)) + self.open_external.setChecked(self.should_open_external) store_check = self.config.get('store_checked', None) if store_check: for n in store_check: - if hasattr(self, 'store_check_' + n): - getattr(self, 'store_check_' + n).setChecked(store_check[n]) - + if n in self.store_checks: + self.store_checks[n].setChecked(store_check[n]) + self.results_view.model().sort_col = self.config.get('sort_col', 2) self.results_view.model().sort_order = self.config.get('sort_order', Qt.AscendingOrder) - self.results_view.header().setSortIndicator(self.results_view.model().sort_col, self.results_view.model().sort_order) + self.results_view.header().setSortIndicator(self.results_view.model().sort_col, self.results_view.model().sort_order) + + def load_settings(self): + # Seconds + self.timeout = self.config.get('timeout', 75) + # Milliseconds + self.hang_time = self.config.get('hang_time', 75) * 1000 + + self.max_results = self.config.get('max_results', 10) + self.should_open_external = self.config.get('open_external', True) + + # Number of threads to run for each type of operation + self.search_thread_count = self.config.get('search_thread_count', 4) + self.cache_thread_count = self.config.get('cache_thread_count', 2) + self.cover_thread_count = self.config.get('cover_thread_count', 2) + self.details_thread_count = self.config.get('details_thread_count', 4) + + def do_config(self): + # Save values that need to be synced between the dialog and the + # search widget. + self.config['open_external'] = self.open_external.isChecked() + + # Create the config dialog. It's going to put two config widgets + # into a QTabWidget for displaying all of the settings. + d = QDialog(self) + button_box = QDialogButtonBox(QDialogButtonBox.Close) + v = QVBoxLayout(d) + button_box.accepted.connect(d.accept) + button_box.rejected.connect(d.reject) + d.setWindowTitle(_('Customize get books search')) + + tab_widget = QTabWidget(d) + v.addWidget(tab_widget) + v.addWidget(button_box) + + chooser_config_widget = StoreChooserWidget() + search_config_widget = StoreConfigWidget(self.config) + + tab_widget.addTab(chooser_config_widget, _('Choose stores')) + tab_widget.addTab(search_config_widget, _('Configure search')) + + # Restore dialog state. + geometry = self.config.get('config_dialog_geometry', None) + if geometry: + d.restoreGeometry(geometry) + else: + d.resize(800, 600) + tab_index = self.config.get('config_dialog_tab_index', 0) + tab_index = min(tab_index, tab_widget.count() - 1) + tab_widget.setCurrentIndex(tab_index) + + d.exec_() + + # Save dialog state. + self.config['config_dialog_geometry'] = bytearray(d.saveGeometry()) + self.config['config_dialog_tab_index'] = tab_widget.currentIndex() + + search_config_widget.save_settings() + self.config_changed() + self.gui.load_store_plugins() + self.setup_store_checks() + + def config_changed(self): + self.load_settings() + + self.open_external.setChecked(self.should_open_external) + self.search_pool.set_thread_count(self.search_thread_count) + self.cache_pool.set_thread_count(self.cache_thread_count) + self.results_view.model().cover_pool.set_thread_count(self.cover_thread_count) + self.results_view.model().details_pool.set_thread_count(self.details_thread_count) def get_results(self): # We only want the search plugins to run # a maximum set amount of time before giving up. self.hang_check += 1 - if self.hang_check >= HANG_TIME: + if self.hang_check >= self.hang_time: self.search_pool.abort() self.checker.stop() else: @@ -222,39 +320,30 @@ def get_results(self): if not self.search_pool.threads_running() and not self.results_view.model().has_results(): info_dialog(self, _('No matches'), _('Couldn\'t find any books matching your query.'), show=True, show_copy_button=False) + def update_book_total(self, total): + self.total.setText('%s' % total) def open_store(self, index): result = self.results_view.model().get_result(index) - self.store_plugins[result.store_name].open(self, result.detail_item, self.open_external.isChecked()) + self.gui.istores[result.store_name].open(self, result.detail_item, self.open_external.isChecked()) def check_progress(self): - if not self.search_pool.threads_running() and not self.results_view.model().cover_pool.threads_running() and not self.results_view.model().details_pool.threads_running(): + if not self.search_pool.threads_running() and not self.results_view.model().cover_pool.threads_running() and not self.results_view.model().details_pool.threads_running(): self.pi.stopAnimation() else: if not self.pi.isAnimated(): self.pi.startAnimation() - def get_store_checks(self): - ''' - Returns a list of QCheckBox's for each store. - ''' - checks = [] - for x in self.store_plugins: - check = getattr(self, 'store_check_' + x, None) - if check: - checks.append(check) - return checks - def stores_select_all(self): - for check in self.get_store_checks(): + for check in self.store_checks.values(): check.setChecked(True) def stores_select_invert(self): - for check in self.get_store_checks(): + for check in self.store_checks.values(): check.setChecked(not check.isChecked()) def stores_select_none(self): - for check in self.get_store_checks(): + for check in self.store_checks.values(): check.setChecked(False) def dialog_closed(self, result): @@ -262,7 +351,7 @@ def dialog_closed(self, result): self.search_pool.abort() self.cache_pool.abort() self.save_state() - + def exec_(self): if unicode(self.search_edit.text()).strip(): self.do_search() diff --git a/src/calibre/gui2/store/search/search.ui b/src/calibre/gui2/store/search/search.ui index 8dd423baec..1451aa09f1 100644 --- a/src/calibre/gui2/store/search/search.ui +++ b/src/calibre/gui2/store/search/search.ui @@ -6,8 +6,8 @@'+ + self.label = QLabel(('
'+ _('%s has been updated to version %s. ' 'See the new features.')%(__appname__, version)) + '">new features.') + '
'+_('Update only if one of the '
+ 'new features or bug fixes is important to you. '
+ 'If the current version works well for you, do not update.'))%(__appname__, version))
self.label.setOpenExternalLinks(True)
self.label.setWordWrap(True)
self.setWindowTitle(_('Update available!'))
diff --git a/src/calibre/gui2/viewer/main.py b/src/calibre/gui2/viewer/main.py
index 303d73dc11..e25d59c5ad 100644
--- a/src/calibre/gui2/viewer/main.py
+++ b/src/calibre/gui2/viewer/main.py
@@ -20,7 +20,7 @@
info_dialog, error_dialog, open_url, available_height
from calibre.ebooks.oeb.iterator import EbookIterator
from calibre.ebooks import DRMError
-from calibre.constants import islinux, isfreebsd, isosx, filesystem_encoding
+from calibre.constants import islinux, isbsd, isosx, filesystem_encoding
from calibre.utils.config import Config, StringConfig, JSONConfig
from calibre.gui2.search_box import SearchBox2
from calibre.ebooks.metadata import MetaInformation
@@ -801,7 +801,7 @@ def main(args=sys.argv):
parser = option_parser()
opts, args = parser.parse_args(args)
- pid = os.fork() if False and (islinux or isfreebsd) else -1
+ pid = os.fork() if False and (islinux or isbsd) else -1
if pid <= 0:
app = Application(args)
app.setWindowIcon(QIcon(I('viewer.png')))
diff --git a/src/calibre/gui2/widgets.py b/src/calibre/gui2/widgets.py
index a7ecdf7b88..dd8d876005 100644
--- a/src/calibre/gui2/widgets.py
+++ b/src/calibre/gui2/widgets.py
@@ -833,7 +833,7 @@ def setDefaultString(name, default):
Config["tabwidth"] = settings.value("tabwidth",
QVariant(4)).toInt()[0]
Config["fontfamily"] = settings.value("fontfamily",
- QVariant("Bitstream Vera Sans Mono")).toString()
+ QVariant("monospace")).toString()
Config["fontsize"] = settings.value("fontsize",
QVariant(10)).toInt()[0]
for name, color, bold, italic in (
diff --git a/src/calibre/gui2/wizard/__init__.py b/src/calibre/gui2/wizard/__init__.py
index e139cee191..5875373dfe 100644
--- a/src/calibre/gui2/wizard/__init__.py
+++ b/src/calibre/gui2/wizard/__init__.py
@@ -164,7 +164,7 @@ class Sony900(Sony505):
class Nook(Sony505):
id = 'nook'
- name = 'Nook'
+ name = 'Nook and Nook Simple Reader'
manufacturer = 'Barnes & Noble'
output_profile = 'nook'
diff --git a/src/calibre/gui2/wizard/finish.ui b/src/calibre/gui2/wizard/finish.ui
index d637aa350a..28972d864e 100644
--- a/src/calibre/gui2/wizard/finish.ui
+++ b/src/calibre/gui2/wizard/finish.ui
@@ -62,7 +62,7 @@
'+_('Setup sending email using') +
+ ' {name} ' +
+ _('If you don\'t have an account, you can sign up for a free {name} email '
+ 'account at http://{url}. {extra}')).format(
+ **service))
+ l.addWidget(self.tl, 0, 0, 3, 0)
+ self.tl.setWordWrap(True)
+ self.tl.setOpenExternalLinks(True)
+ for name, label in (
+ ['from_', _('Your %s &email address:')],
+ ['username', _('Your %s &username:')],
+ ['password', _('Your %s &password:')],
+ ):
+ la = QLabel(label%service['name'])
+ le = QLineEdit(self)
+ setattr(self, name, le)
+ setattr(self, name+'_label', la)
+ r = l.rowCount()
+ l.addWidget(la, r, 0)
+ l.addWidget(le, r, 1)
+ la.setBuddy(le)
+ if name == 'password':
+ self.ptoggle = QCheckBox(_('&Show password'), self)
+ l.addWidget(self.ptoggle, r, 2)
+ self.ptoggle.stateChanged.connect(
+ lambda s: self.password.setEchoMode(self.password.Normal if s
+ == Qt.Checked else self.password.Password))
+ self.username.setText(service['username'])
+ self.password.setEchoMode(self.password.Password)
+ self.bl = QLabel(' ' + _(
+ 'If you plan to use email to send books to your Kindle, remember to'
+ ' add the your %s email address to the allowed email addresses in your '
+ 'Amazon.com Kindle management page.')%service['name'])
+ self.bl.setWordWrap(True)
+ l.addWidget(self.bl, l.rowCount(), 0, 3, 0)
+ l.addWidget(bb, l.rowCount(), 0, 3, 0)
+ self.setWindowTitle(_('Setup') + ' ' + service['name'])
+ self.resize(self.sizeHint())
+ self.service = service
+
+ def accept(self):
+ un = unicode(self.username.text())
+ if self.service.get('at_in_username', False) and '@' not in un:
+ return error_dialog(self, _('Incorrect username'),
+ _('%s needs the full email address as your username') %
+ self.service['name'], show=True)
+ QDialog.accept(self)
+
class SendEmail(QWidget, Ui_Form):
@@ -129,7 +187,8 @@ def create_service_relay(self, service, *args):
'port': 587,
'username': '@gmail.com',
'url': 'www.gmail.com',
- 'extra': ''
+ 'extra': '',
+ 'at_in_username': True,
},
'hotmail': {
'name': 'Hotmail',
@@ -138,55 +197,15 @@ def create_service_relay(self, service, *args):
'username': '',
'url': 'www.hotmail.com',
'extra': _('If you are setting up a new'
- ' hotmail account, you must log in to it '
- ' once before you will be able to send mails.'),
+ ' hotmail account, Microsoft requires that you '
+ ' verify your account periodically, before it'
+ ' will let calibre send email. In this case, I'
+ ' strongly suggest you setup a free gmail account'
+ ' instead.'),
+ 'at_in_username': True,
}
}[service]
- d = QDialog(self)
- l = QGridLayout()
- d.setLayout(l)
- bb = QDialogButtonBox(QDialogButtonBox.Ok|QDialogButtonBox.Cancel)
- bb.accepted.connect(d.accept)
- bb.rejected.connect(d.reject)
- d.tl = QLabel((' '+_('Setup sending email using') +
- ' {name} ' +
- _('If you don\'t have an account, you can sign up for a free {name} email '
- 'account at http://{url}. {extra}')).format(
- **service))
- l.addWidget(d.tl, 0, 0, 3, 0)
- d.tl.setWordWrap(True)
- d.tl.setOpenExternalLinks(True)
- for name, label in (
- ['from_', _('Your %s &email address:')],
- ['username', _('Your %s &username:')],
- ['password', _('Your %s &password:')],
- ):
- la = QLabel(label%service['name'])
- le = QLineEdit(d)
- setattr(d, name, le)
- setattr(d, name+'_label', la)
- r = l.rowCount()
- l.addWidget(la, r, 0)
- l.addWidget(le, r, 1)
- la.setBuddy(le)
- if name == 'password':
- d.ptoggle = QCheckBox(_('&Show password'), d)
- l.addWidget(d.ptoggle, r, 2)
- d.ptoggle.stateChanged.connect(
- lambda s: d.password.setEchoMode(d.password.Normal if s
- == Qt.Checked else d.password.Password))
- d.username.setText(service['username'])
- d.password.setEchoMode(d.password.Password)
- d.bl = QLabel(' ' + _(
- 'If you plan to use email to send books to your Kindle, remember to'
- ' add the your %s email address to the allowed email addresses in your '
- 'Amazon.com Kindle management page.')%service['name'])
- d.bl.setWordWrap(True)
- l.addWidget(d.bl, l.rowCount(), 0, 3, 0)
- l.addWidget(bb, l.rowCount(), 0, 3, 0)
- d.setWindowTitle(_('Setup') + ' ' + service['name'])
- d.resize(d.sizeHint())
- bb.setVisible(True)
+ d = RelaySetup(service, self)
if d.exec_() != d.Accepted:
return
self.relay_username.setText(d.username.text())
diff --git a/src/calibre/library/caches.py b/src/calibre/library/caches.py
index 98fd3a9fbc..470bbcdfa8 100644
--- a/src/calibre/library/caches.py
+++ b/src/calibre/library/caches.py
@@ -200,6 +200,11 @@ def __getitem__(self, col):
def __getslice__(self, i, j):
return self.__getitem__(slice(i, j))
+ def refresh_composites(self):
+ for c in self._composites:
+ self[c] = None
+ self._must_do = True
+
# }}}
class ResultCache(SearchQueryParser): # {{{
@@ -918,6 +923,7 @@ def refresh_ondevice(self, db):
for item in self._data:
if item is not None:
item[ondevice_col] = db.book_on_device_string(item[0])
+ item.refresh_composites()
def refresh(self, db, field=None, ascending=True):
temp = db.conn.get('SELECT * FROM meta2')
diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py
index 9a740a08b7..df465c919e 100644
--- a/src/calibre/library/database2.py
+++ b/src/calibre/library/database2.py
@@ -211,6 +211,10 @@ def initialize_dynamic(self):
defs = self.prefs.defaults
defs['gui_restriction'] = defs['cs_restriction'] = ''
defs['categories_using_hierarchy'] = []
+ self.column_color_count = 5
+ for i in range(1,self.column_color_count+1):
+ defs['column_color_name_'+str(i)] = ''
+ defs['column_color_template_'+str(i)] = ''
# Migrate the bool tristate tweak
defs['bools_are_tristate'] = \
@@ -856,6 +860,7 @@ def get_metadata(self, idx, index_is_id=False, get_cover=False,
mi.uuid = row[fm['uuid']]
mi.title_sort = row[fm['sort']]
mi.book_size = row[fm['size']]
+ mi.ondevice_col= row[fm['ondevice']]
mi.last_modified = row[fm['last_modified']]
formats = row[fm['formats']]
if not formats:
diff --git a/src/calibre/library/save_to_disk.py b/src/calibre/library/save_to_disk.py
index dc83b44c01..5f49833564 100644
--- a/src/calibre/library/save_to_disk.py
+++ b/src/calibre/library/save_to_disk.py
@@ -134,6 +134,8 @@ class SafeFormat(TemplateFormatter):
'''
def get_value(self, key, args, kwargs):
+ if key == '':
+ return ''
try:
key = key.lower()
try:
diff --git a/src/calibre/library/server/base.py b/src/calibre/library/server/base.py
index eea28469a9..319feefa44 100644
--- a/src/calibre/library/server/base.py
+++ b/src/calibre/library/server/base.py
@@ -218,10 +218,15 @@ def start(self):
cherrypy.engine.start()
except:
ip = get_external_ip()
- if not ip or ip == '127.0.0.1':
+ if not ip or ip.startswith('127.'):
raise
cherrypy.log('Trying to bind to single interface: '+ip)
+ # Change the host we listen on
cherrypy.config.update({'server.socket_host' : ip})
+ # This ensures that the change is actually applied
+ cherrypy.server.socket_host = ip
+ cherrypy.server.httpserver = cherrypy.server.instance = None
+
cherrypy.engine.start()
self.is_running = True
@@ -231,6 +236,8 @@ def start(self):
cherrypy.engine.block()
except Exception as e:
self.exception = e
+ import traceback
+ traceback.print_exc()
finally:
self.is_running = False
try:
diff --git a/src/calibre/linux.py b/src/calibre/linux.py
index d83bba061f..9e58d4f638 100644
--- a/src/calibre/linux.py
+++ b/src/calibre/linux.py
@@ -7,7 +7,7 @@
from subprocess import check_call
from calibre import __appname__, prints, guess_type
-from calibre.constants import islinux, isfreebsd
+from calibre.constants import islinux, isnetbsd, isbsd
from calibre.customize.ui import all_input_formats
from calibre.ptempfile import TemporaryDirectory
from calibre import CurrentDir
@@ -136,17 +136,17 @@ def __init__(self, opts, info=prints, warn=None, manifest=None):
self.icon_resources = []
self.menu_resources = []
self.mime_resources = []
- if islinux or isfreebsd:
+ if islinux or isbsd:
self.setup_completion()
self.install_man_pages()
- if islinux or isfreebsd:
+ if islinux or isbsd:
self.setup_desktop_integration()
self.create_uninstaller()
from calibre.utils.config import config_dir
if os.path.exists(config_dir):
os.chdir(config_dir)
- if islinux or isfreebsd:
+ if islinux or isbsd:
for f in os.listdir('.'):
if os.stat(f).st_uid == 0:
import shutil
@@ -196,7 +196,10 @@ def setup_completion(self): # {{{
if os.path.exists(bc):
f = os.path.join(bc, 'calibre')
else:
- f = os.path.join(self.opts.staging_etc, 'bash_completion.d/calibre')
+ if isnetbsd:
+ f = os.path.join(self.opts.staging_root, 'share/bash_completion.d/calibre')
+ else:
+ f = os.path.join(self.opts.staging_etc, 'bash_completion.d/calibre')
if not os.path.exists(os.path.dirname(f)):
os.makedirs(os.path.dirname(f))
self.manifest.append(f)
@@ -300,7 +303,7 @@ def setup_completion(self): # {{{
def install_man_pages(self): # {{{
try:
from calibre.utils.help2man import create_man_page
- if isfreebsd:
+ if isbsd:
manpath = os.path.join(self.opts.staging_root, 'man/man1')
else:
manpath = os.path.join(self.opts.staging_sharedir, 'man/man1')
@@ -316,7 +319,7 @@ def install_man_pages(self): # {{{
continue
parser = parser()
raw = create_man_page(prog, parser)
- if isfreebsd:
+ if isbsd:
manfile = os.path.join(manpath, prog+'.1')
else:
manfile = os.path.join(manpath, prog+'.1'+__appname__+'.bz2')
@@ -353,7 +356,7 @@ def setup_desktop_integration(self): # {{{
mimetypes = set([])
for x in all_input_formats():
mt = guess_type('dummy.'+x)[0]
- if mt and 'chemical' not in mt:
+ if mt and 'chemical' not in mt and 'ctc-posml' not in mt:
mimetypes.add(mt)
def write_mimetypes(f):
@@ -373,11 +376,10 @@ def write_mimetypes(f):
des = ('calibre-gui.desktop', 'calibre-lrfviewer.desktop',
'calibre-ebook-viewer.desktop')
for x in des:
- cmd = ['xdg-desktop-menu', 'install', './'+x]
- if x != des[-1]:
- cmd.insert(2, '--noupdate')
+ cmd = ['xdg-desktop-menu', 'install', '--noupdate', './'+x]
check_call(' '.join(cmd), shell=True)
self.menu_resources.append(x)
+ check_call(['xdg-desktop-menu', 'forceupdate'])
f = open('calibre-mimetypes', 'wb')
f.write(MIME)
f.close()
diff --git a/src/calibre/manual/conf.py b/src/calibre/manual/conf.py
index d2b3a91d8d..91a4395007 100644
--- a/src/calibre/manual/conf.py
+++ b/src/calibre/manual/conf.py
@@ -43,7 +43,7 @@
# General substitutions.
project = __appname__
-copyright = '2008, Kovid Goyal'
+copyright = 'Kovid Goyal'
# The default replacements for |version| and |release|, also used in various
# other places throughout the built documents.
@@ -86,11 +86,19 @@
# given in html_static_path.
html_theme = 'default'
html_theme_options = {'stickysidebar':'true', 'relbarbgcolor':'black'}
+# Put the quick search box on top
+html_sidebars = {
+ '**' : ['searchbox.html', 'localtoc.html', 'relations.html',
+ 'sourcelink.html'],
+}
+
+# The favicon
+html_favicon = 'favicon.ico'
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = ['resources']
+html_static_path = ['resources', '../../../icons/favicon.ico']
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
@@ -108,7 +116,7 @@
epub_author = 'Kovid Goyal'
epub_cover = 'epub_cover.jpg'
epub_publisher = 'Kovid Goyal'
-epub_identifier = 'http://calibre-ebook.com/user_manual'
+epub_identifier = 'http://manual.calibre-ebook.com'
epub_scheme = 'url'
epub_uid = 'S54a88f8e9d42455e9c6db000e989225f'
epub_tocdepth = 4
@@ -131,7 +139,7 @@
# Output file base name for HTML help builder.
htmlhelp_basename = 'calibredoc'
-html_use_opensearch = 'http://calibre-ebook.com/user_manual'
+html_use_opensearch = 'http://manual.calibre-ebook.com'
html_show_sphinx = False
diff --git a/src/calibre/manual/conversion.rst b/src/calibre/manual/conversion.rst
index 73358e0f72..540da0fc9a 100644
--- a/src/calibre/manual/conversion.rst
+++ b/src/calibre/manual/conversion.rst
@@ -655,6 +655,7 @@ Some limitations of PDF input are:
* Some PDFs use special glyphs to represent ll or ff or fi, etc. Conversion of these may or may not work depending on just how they are represented internally in the PDF.
* Some PDFs store their images upside down with a rotation instruction, |app| currently doesn't support that instruction, so the images will be rotated in the output as well.
* Links and Tables of Contents are not supported
+ * PDFs that use embedded non-unicode fonts to represent non-English characters will result in garbled output for those characters
To re-iterate **PDF is a really, really bad** format to use as input. If you absolutely must use PDF, then be prepared for an
output ranging anywhere from decent to unusable, depending on the input PDF.
diff --git a/src/calibre/manual/develop.rst b/src/calibre/manual/develop.rst
index f95d51bfca..c49176ceb2 100644
--- a/src/calibre/manual/develop.rst
+++ b/src/calibre/manual/develop.rst
@@ -65,7 +65,7 @@ this, make your changes, then run::
bzr send -o my-changes
This will create a :file:`my-changes` file in the current directory,
-simply attach that to a ticket on the |app| `bug tracker Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7104,14 +7205,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7523,13 +7624,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7557,7 +7658,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7594,57 +7695,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7668,34 +7811,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7710,7 +7853,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7723,26 +7866,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7922,7 +8045,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7974,7 +8097,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8048,13 +8171,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8706,7 +8829,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9218,7 +9341,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9470,74 +9593,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7197,14 +7298,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7616,13 +7717,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7650,7 +7751,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7687,57 +7788,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7761,34 +7904,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7803,7 +7946,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7816,26 +7959,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -8015,7 +8138,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "فتح محرر الوسوم"
@@ -8067,7 +8190,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8141,13 +8264,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8799,7 +8922,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "المؤلفون"
@@ -9315,7 +9438,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9567,74 +9690,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "بحث متقدّم"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7104,14 +7205,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7523,13 +7624,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7557,7 +7658,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7594,57 +7695,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7668,34 +7811,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7710,7 +7853,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7723,26 +7866,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7922,7 +8045,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7974,7 +8097,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8048,13 +8171,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8706,7 +8829,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9218,7 +9341,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9470,74 +9593,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7132,14 +7233,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7551,13 +7652,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7585,7 +7686,7 @@ msgstr "Местоположение"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7622,57 +7723,99 @@ msgstr ""
msgid "No matches found"
msgstr "Не са намерени съвпадения"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Главни букви"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Малки букви"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7696,34 +7839,34 @@ msgstr "Показване на &детайлите на задачата"
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7738,7 +7881,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Потребителски метаданни"
@@ -7751,26 +7894,6 @@ msgstr "Търсене/Замяна"
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Малки букви"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Главни букви"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7950,7 +8073,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -8002,7 +8125,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Дата:"
@@ -8076,13 +8199,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "&Основни метаданни"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "&Потребителски метаданни"
@@ -8734,7 +8857,7 @@ msgid "Choose formats"
msgstr "Избор на формати"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Автори"
@@ -9246,7 +9369,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "от"
@@ -9498,74 +9621,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7099,14 +7200,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7518,13 +7619,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7552,7 +7653,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7589,57 +7690,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7663,34 +7806,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7705,7 +7848,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7718,26 +7861,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7917,7 +8040,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7969,7 +8092,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8043,13 +8166,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8701,7 +8824,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9213,7 +9336,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9465,74 +9588,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7099,14 +7200,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7518,13 +7619,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7552,7 +7653,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7589,57 +7690,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7663,34 +7806,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7705,7 +7848,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7718,26 +7861,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7917,7 +8040,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7969,7 +8092,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8043,13 +8166,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8701,7 +8824,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9213,7 +9336,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9465,74 +9588,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr " No es pot desar llibres al dispositiu perquè no hi ha prou espai "
@@ -7981,14 +8096,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Plantilla no vàlida"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "La plantilla %s no és vàlida:"
@@ -8524,13 +8639,13 @@ msgid "Where do you want to delete from?"
msgstr "D'on voleu suprimir?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Biblioteca"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Dispositiu"
@@ -8560,7 +8675,7 @@ msgstr "Ubicació"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8603,40 +8718,82 @@ msgstr "Ordre per autor"
msgid "No matches found"
msgstr "No s'han trobat coincidències"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Canvia la caixa"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Majúscules"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Minúscules"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Intercanvia la caixa"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Inicials en majúscula"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Posa en majúscules"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr "Copia a ordre per autor"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr "Copia a autor"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "El nom de l'autor no és vàlid"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Els noms d'autor no poden contenir caràcters &."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
-msgstr "Administra els autors"
+msgstr "Gestiona els autors"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Cerca per:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "&Cerca"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Ordena per autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Ordena per ordre per autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
@@ -8647,11 +8804,11 @@ msgstr ""
"exacta com es genera aquest valor a Preferències->Avançat->\n"
"Ajustaments"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Torna a calcular tots els valors d'ordre per autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
@@ -8660,7 +8817,7 @@ msgstr ""
"servir aquest botó després de canviar Preferències->Avançat->Ajustaments->\n"
"Algoritme d'ordre per autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr "Copia tots els valors d'odre per autor a autor"
@@ -8684,34 +8841,34 @@ msgstr "Mostra &detalls de la tasca"
msgid "Stop &all non device jobs"
msgstr "Atura &totes les tasques que no són de dispositiu"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr "&Copia al porta-retalls"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr "Mostra els &detalls"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr "Oculta els &detalls"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr "Mostra informació detallada quant a aquest error"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Copiat"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Copia-ho al porta-retalls"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8726,7 +8883,7 @@ msgid "Standard metadata"
msgstr "Metadades estàndard"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Metadades personalitzades"
@@ -8739,26 +8896,6 @@ msgstr "Cerca/Reemplaça"
msgid "Working"
msgstr "S'està treballant..."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Minúscules"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Majúscules"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Inicials en majúscula"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Posa en majúscules"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Coincidència de caràcter"
@@ -8969,7 +9106,7 @@ msgstr "Afegeix les eti&quetes "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Obre l'editor d'etiquetes"
@@ -9032,7 +9169,7 @@ msgid "&Force numbers to start with:"
msgstr "&Força que els nombres comencin per:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Data:"
@@ -9116,13 +9253,13 @@ msgid "Set from &ebook file(s)"
msgstr "Estableix a partir del(s) fitxer(s) del llibre"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "Metadades &bàsiques"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "&Personalitza les metadades"
@@ -9869,7 +10006,7 @@ msgid "Choose formats"
msgstr "Tria de formats"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Autors"
@@ -10418,7 +10555,7 @@ msgid "Attached, you will find the e-book"
msgstr "Hi trobareu el llibre adjunt"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "per"
@@ -10683,49 +10820,49 @@ msgstr "Segur que voleu aturar la tasca seleccionada?"
msgid "Do you really want to stop all non-device jobs?"
msgstr "Segur que voleu aturar totes les tasques que no són de dispositiu?"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Expulsa el dispositiu"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Mostra els llibres de la biblioteca del calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Mostra els llibres de la memòria principal del dispositiu"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "Targeta A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Mostra els llibres de la targeta de memòria A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "Targeta B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Mostra els llibres de la targeta de memòria B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Maj+Ctrl+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Cerca avançada"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. This wizard will help you choose an appropriate font size key for your needs. Just enter the base font size of the input document and then enter an input font size. The wizard will display what font size it will be mapped to, by the font rescaling algorithm. You can adjust the algorithm by adjusting the output base font size and font key below. When you find values suitable for you, click OK. By default, if the output base font size is zero and/or no font size key is specified, calibre will use the values from the current Output Profile. See the User Manual for a discussion of how font size rescaling works. See the User Manual for a discussion of how font size rescaling works. There was an error reading from file: Search and replace uses regular expressions. See the regular expressions tutorial to get started with regular expressions. Also clicking the wizard buttons below will allow you to test your regular expression against the current input document."
+msgid " Search and replace uses regular expressions. See the regular expressions tutorial to get started with regular expressions. Also clicking the wizard buttons below will allow you to test your regular expression against the current input document."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:173
@@ -6020,7 +5993,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box_ui.py:52
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/cache_progress_dialog_ui.py:50
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:61
msgid "Dialog"
msgstr ""
@@ -6192,46 +6165,50 @@ msgstr ""
msgid "TXT Output"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
msgid "General"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:86
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
msgid "Output &Encoding:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
msgid "&Line ending style:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
msgid "&Formatting:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
msgid "Plain"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
msgid "&Maximum line length:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
msgid "Force maximum line length"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:96
msgid "Markdown, Textile"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:97
msgid "Do not remove links ( tags) before processing"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:98
msgid "Do not remove image references before processing"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:99
+msgid "Keep text color, when possible"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txtz_output.py:12
msgid "TXTZ Output"
msgstr ""
@@ -6315,7 +6292,7 @@ msgid "(A regular expression)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:89
-msgid " For example, to match all h2 tags that have class=\"chapter\", set tag to h2, attribute to class and value to chapter. Leaving attribute blank will match any attribute and leaving value blank will match any value. Setting tag to * will match any tag. To learn more advanced usage of XPath see the XPath Tutorial."
+msgid " For example, to match all h2 tags that have class=\"chapter\", set tag to h2, attribute to class and value to chapter. Leaving attribute blank will match any attribute and leaving value blank will match any value. Setting tag to * will match any tag. To learn more advanced usage of XPath see the XPath Tutorial."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:128
@@ -6338,12 +6315,12 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:682
#: /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/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:1117
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:128
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:148
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:279
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1139
msgid "Undefined"
msgstr ""
@@ -6497,7 +6474,7 @@ msgid "Error communicating with device"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1168
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1170
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:221
msgid "No suitable formats"
msgstr ""
@@ -6522,67 +6499,67 @@ msgstr ""
msgid " detected."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:844
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846
msgid "selected to send"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "%i of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868
msgid "0 of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869
msgid "Choose format to send to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
msgid "No device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
msgid "Cannot send: No device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:883
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:885
msgid "No card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:880
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:884
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:886
msgid "Cannot send: Device has no storage card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:945
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1162
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1030
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1164
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:974
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:976
msgid "Sending catalogs to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1075
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1077
msgid "Sending news to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1129
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1131
msgid "Sending books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1169
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1171
msgid "Could not upload the following books to the device, as no suitable formats were found. Convert the book(s) to a format supported by your device first."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1241
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1242
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244
msgid " Cannot upload books to device there is no more free space available "
msgstr ""
@@ -6598,16 +6575,16 @@ msgstr ""
#:
#: /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/library/delegates.py:437
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:273
#: /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: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/library/delegates.py:438
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:274
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -6828,6 +6805,7 @@ msgid "Path from library"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89
#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256
msgid "Name"
@@ -6965,12 +6943,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:73
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:189
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:199
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:167
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:178
msgid "&Author(s):"
msgstr ""
@@ -6979,12 +6958,12 @@ msgid "&Profile:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:24
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:30
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:222
msgid "&OK"
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/template_dialog.py:223
#: /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"
@@ -7002,14 +6981,14 @@ msgstr ""
#:
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7038,8 +7017,8 @@ msgstr ""
#:
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1025
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7138,35 +7117,35 @@ msgid "Author names cannot contain & characters."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
@@ -7174,19 +7153,19 @@ msgid ""
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7392,13 +7371,13 @@ msgid "Specify how the author(s) of this book should be sorted. For example Char
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:530
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:889
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/metadata/basic_widgets.py:868
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:890
msgid "Rating of this book. 0-5 stars"
msgstr ""
@@ -7468,7 +7447,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/metadata/basic_widgets.py:1101
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1123
msgid "&Date:"
msgstr ""
@@ -7700,23 +7679,23 @@ msgid "Password needed"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:205
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:133
msgid "&Username:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:215
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:126
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:135
msgid "&Password:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:216
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:130
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:81
msgid "&Show password"
msgstr ""
@@ -7867,11 +7846,11 @@ msgstr ""
msgid "%s news sources"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:311
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:310
msgid "Need username and password"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:312
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:311
msgid "You must provide a username and/or password to use this news source."
msgstr ""
@@ -7908,7 +7887,7 @@ msgid "Last downloaded:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:421
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:206
msgid "Schedule news download"
msgstr ""
@@ -7928,105 +7907,105 @@ msgstr ""
msgid "Cannot download news as no internet connection is active"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:198
-msgid "&Search:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:199
-msgid "blurb"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:200
-msgid "&Schedule for download:"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:201
-msgid "Days of week"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:202
-msgid "Days of month"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:203
-msgid "Every x days"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204
-msgid "&Account"
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:207
+msgid "Go"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:208
-msgid "For the scheduling to work, you must leave calibre running."
+msgid "blurb"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:209
-msgid "&Schedule"
+msgid "&Schedule for download:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:210
-msgid "Add &title as tag"
+msgid "Days of week"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:211
-msgid "&Extra tags:"
+msgid "Days of month"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212
-msgid "Maximum number of copies (issues) of this recipe to keep. Set to 0 to keep all (disable)."
+msgid "Every x days"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213
+msgid "&Account"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217
+msgid "For the scheduling to work, you must leave calibre running."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218
+msgid "&Schedule"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219
+msgid "Add &title as tag"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:220
+msgid "&Extra tags:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:221
+msgid "Maximum number of copies (issues) of this recipe to keep. Set to 0 to keep all (disable)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:222
msgid "&Keep at most:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:223
msgid ""
" When set, this option will cause calibre to keep, at most, the specified number of issues of this periodical. Every time a new issue is downloaded, the oldest one is deleted, if the total is larger than this number.\n"
" Note that this feature only works if you have the option to add the title as tag checked, above.\n"
" Also, the setting for deleting periodicals older than a number of days, below, takes priority over this setting."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:226
msgid "all issues"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:227
msgid " issues"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:228
msgid "&Advanced"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:220
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:229
msgid "&Download now"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:221
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:230
msgid "&Delete downloaded news older than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:222
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:231
msgid ""
" Delete downloaded news older than the specified number of days. Set to zero to disable.\n"
" You can also control the maximum number of issues of a specific periodical that are kept by clicking the Advanced tab for that periodical above."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:224
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:233
msgid "never delete"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:234
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:273
msgid " days"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:235
msgid "Download all scheduled news sources at once"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:236
msgid "Download &all scheduled"
msgstr ""
@@ -8047,82 +8026,110 @@ msgid "Negate"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:198
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:168
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:186
msgid "Advanced Search"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:187
msgid "&What kind of match to use:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:188
msgid "Contains: the word or phrase matches anywhere in the metadata field"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:201
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:209
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:189
msgid "Equals: the word or phrase must match the entire metadata field"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:202
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:190
msgid "Regular expression: the expression must match anywhere in the metadata field"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:203
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:191
msgid "Find entries that have..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:204
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:212
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:192
msgid "&All these words:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:205
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:193
msgid "This exact &phrase:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:206
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:184
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:194
msgid "&One or more of these words:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:207
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:215
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:195
msgid "But dont show entries that have..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:208
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:216
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:196
msgid "Any of these &unwanted words:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:209
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:187
-msgid "See the User Manual for more help"
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:197
+msgid "See the User Manual for more help"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:210
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:218
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:198
msgid "A&dvanced Search"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:212
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:220
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:200
msgid "Enter the title."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:213
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:201
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:908
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:930
msgid "Ta&gs:"
msgstr ""
@@ -8140,12 +8147,16 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:219
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions_ui.py:101
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:193
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:184
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:203
msgid "&Clear"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:220
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:194
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:224
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:204
msgid "Search only in specific fields:"
msgstr ""
@@ -8353,6 +8364,10 @@ msgstr ""
msgid "Ctrl+S"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:249
+msgid "EXCEPTION: "
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog_ui.py:71
msgid "Function &name:"
msgstr ""
@@ -8366,6 +8381,94 @@ msgstr ""
msgid "Python &code:"
msgstr ""
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:36
+msgid "Open Template Editor"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:39
+msgid "Open Tag Wizard"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:424
+msgid "Edit template"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:52
+msgid "Invalid text"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:53
+msgid "The text in the box was not generated by this wizard"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:64
+msgid "Tag Wizard"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:72
+msgid "Tags (see the popup help for more information)"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:74
+msgid "You can enter more than one tag per box, separated by commas. The comparison ignores letter case. Set a regular expression pattern to use when trying to guess ebook metadata from filenames. A tutorial on using regular expressions is available. A tutorial on using regular expressions is available. Use the Test functionality below to test your regular expression on a few sample filenames (remember to include the file extension). The group names for the various metadata entries are documented in tooltips. Search the list of books by title, author, publisher, tags, comments, etc. Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's for year. For example:\n"
@@ -10169,68 +10289,86 @@ msgid ""
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:235
msgid "Use MMM yyyy for month + year, yyyy for year only"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:209
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:236
msgid "Default: dd MMM yyyy."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:237
+msgid ""
+" The format specifier must begin with Default: Not formatted. For format language details see the python documentation"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:241
msgid "Format for &dates"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:242
+msgid "Format for &numbers"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:243
msgid "&Template"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:212
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:244
msgid "Field template. Uses the same syntax as save templates."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:245
msgid "Similar to save templates. For example, {title} {isbn}"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:224
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:246
msgid "Default: (nothing)"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:215
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:247
msgid "&Sort/search column by"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:216
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:248
msgid "How this column should handled in the GUI when sorting and searching"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:249
msgid "If checked, this column will appear in the tags browser as a category"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:218
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:250
msgid "Show in tags browser"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:256
msgid "Values"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:220
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:252
msgid ""
"A comma-separated list of permitted values. The empty value is always\n"
"included, and is the default. For example, the list 'one,two,three' has\n"
@@ -10238,10 +10376,22 @@ msgid ""
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:255
msgid "The empty string is always the first value"
msgstr ""
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:257
+msgid ""
+"A list of color names to use when displaying an item. The\n"
+"list must be empty or contain a color for each value."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:259
+msgid "Colors"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_debug.py:21
msgid "Getting debug information"
msgstr ""
@@ -10360,7 +10510,7 @@ msgid "Always"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:132
-msgid "Automatic"
+msgid "If there is enough room"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:133
@@ -10379,83 +10529,108 @@ msgstr ""
msgid "Partitioned"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:163
+msgid "Here you can specify coloring rules for columns shown in the library view. Choose the column you wish to color, then supply a template that specifies the color to use based on the values in the column. There is a tutorial on using templates."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:170
+msgid "If you want to color a field based on tags, then click the button next to an empty line to open the tags wizard. It will build a template for you. You can later edit that template with the same wizard. If you edit it by hand, the wizard might not work or might restore old values."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:176
+msgid ""
+"The template must evaluate to one of the color names shown below. You can use any legal template expression. For example, you can set the title to always display in green using the template \"green\" (without the quotes). To show the title in the color named in the custom column #column, use \"{#column}\". To show the title in blue if the custom column #column contains the value \"foo\", in red if the column contains the value \"bar\", otherwise in black, use Migrating old database to ebook library in %s Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7655,14 +7756,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Neplatná šablona"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "Šablona %s je neplatná:"
@@ -8083,16 +8184,16 @@ msgstr "Edituj komentáře"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:76
msgid "Where do you want to delete from?"
-msgstr ""
+msgstr "Odkud chcete mazat?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Knihovna"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Zařízení"
@@ -8122,7 +8223,7 @@ msgstr "Umístění"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8159,57 +8260,99 @@ msgstr "Třídění podle autora"
msgid "No matches found"
msgstr "Nebyly nalezeny žádné výsledky"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Změnit velikost písmen"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Velká písmena"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Malá písmena"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Zaměnit malá/velká písmena"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Velikost písma v nadpise"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Velká počáteční písmena"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Neplatné jméno autora"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Jméno autora nemůže obsahovat znaky &."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Spravovat autory"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Hledat:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "&Hledat"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Seřadit dle autora"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Třídit podle autora"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Přepočítat hodnoty pro třídění autorů"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -8233,38 +8376,38 @@ msgstr "Zobrazit &detaily úlohy"
msgid "Stop &all non device jobs"
msgstr "Zastavit &všechny úlohy nesouvisející se zařízením"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr "&Kopírovat do schránky"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr "Zobrazit &detaily"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr "Skrýt &detaily"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr "Zobrazit detailní informace o této chybě"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Kopírováno"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Kopírovat do schránky"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
-msgstr ""
+msgstr "Zobrazit log"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:58
msgid "Title/Author"
@@ -8275,7 +8418,7 @@ msgid "Standard metadata"
msgstr "Standardní metadata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Volitelná metadata"
@@ -8288,26 +8431,6 @@ msgstr "Hledat?Nahradit"
msgid "Working"
msgstr "Pracuje"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Malá písmena"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Velká písmena"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Velikost písma v nadpise"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Velká počáteční písmena"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Znaková shoda"
@@ -8344,7 +8467,7 @@ msgstr "Kniha %d:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:400
msgid "Enter an identifier type"
-msgstr ""
+msgstr "Vložit typ identifikátoru"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:405
msgid ""
@@ -8500,7 +8623,7 @@ msgstr "Přidat tagy: "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Otevřít Editor značek"
@@ -8560,7 +8683,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Datum:"
@@ -8571,7 +8694,7 @@ msgstr "d MMM yyyy"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:561
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:566
msgid "&Apply date"
-msgstr ""
+msgstr "&Použít datum"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:562
msgid "&Published:"
@@ -8640,13 +8763,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "Základní metadata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "Uživatelská metadata"
@@ -8694,7 +8817,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:593
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:615
msgid "Identifier type:"
-msgstr ""
+msgstr "Typ identifikátoru:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:594
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:616
@@ -8727,7 +8850,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:600
msgid "Cas&e sensitive"
-msgstr ""
+msgstr "Rozlišovat velikost písmen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:601
msgid "&Replace with:"
@@ -8783,7 +8906,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:614
msgid "Split &result"
-msgstr ""
+msgstr "Rozdělit výsledky"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:617
msgid "For multiple-valued fields, sho&w"
@@ -8886,7 +9009,7 @@ msgstr "Obnova databáze byla úspěšná"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:48
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:75
msgid "Saved search already exists"
-msgstr ""
+msgstr "Uložené hledání už uloženo"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:76
@@ -8987,11 +9110,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:154
msgid "every hour"
-msgstr ""
+msgstr "každou hodinu"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:157
msgid "days"
-msgstr ""
+msgstr "dní"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:161
msgid ""
@@ -9032,7 +9155,7 @@ msgstr "Naposledy staženo: nikdy"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:373
msgid "never"
-msgstr ""
+msgstr "nikdy"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:379
msgid "%d days, %d hours and %d minutes ago"
@@ -9040,7 +9163,7 @@ msgstr "%d dnů, %d hodin a %d minut staré"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:393
msgid "Last downloaded:"
-msgstr ""
+msgstr "Naposledy staženo:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:421
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197
@@ -9085,7 +9208,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:203
msgid "Every x days"
-msgstr ""
+msgstr "Každých x dní"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204
msgid "&Account"
@@ -9159,7 +9282,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:224
msgid "never delete"
-msgstr ""
+msgstr "nikdy nemazat"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:225
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:273
@@ -9312,7 +9435,7 @@ msgid "Choose formats"
msgstr "Zvolit formáty"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Autoři"
@@ -9333,7 +9456,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:191
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:222
msgid "Invalid name"
-msgstr ""
+msgstr "Neplatné jméno"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:192
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:223
@@ -9592,7 +9715,7 @@ msgstr "&Znovyvytvořit ePub"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:68
msgid "&Preview ePub"
-msgstr ""
+msgstr "&Preview ePub"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:141
msgid "No recipe selected"
@@ -9795,7 +9918,7 @@ msgstr "Kód zdroje (python)"
#: /home/kovid/work/calibre/src/calibre/gui2/dnd.py:51
msgid "Download %s"
-msgstr ""
+msgstr "Stáhnout %s"
#: /home/kovid/work/calibre/src/calibre/gui2/dnd.py:54
msgid "Downloading %s from %s"
@@ -9815,11 +9938,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/ebook_download.py:87
msgid "Downloading %s"
-msgstr ""
+msgstr "Stahování %s"
#: /home/kovid/work/calibre/src/calibre/gui2/ebook_download.py:99
msgid "Downloading"
-msgstr ""
+msgstr "Stahování"
#: /home/kovid/work/calibre/src/calibre/gui2/ebook_download.py:103
msgid "Failed to download ebook"
@@ -9846,7 +9969,7 @@ msgid "Attached, you will find the e-book"
msgstr "Přiloženo, najdete e-book"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "od"
@@ -9959,7 +10082,7 @@ msgstr "Regulární výraz (?P Search the list of books by title, author, publisher, tags, comments, "
"etc. Hledání v seznamu knih podle názvu, autora, vydavatele, tagů, komentářů, "
"atd. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7607,14 +7708,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Ugyldig skabelon"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "Skabelonen %s er ugyldig:"
@@ -8040,13 +8141,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Bibliotek"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Enhed"
@@ -8076,7 +8177,7 @@ msgstr "Placering"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8113,57 +8214,99 @@ msgstr "Forfattersortering"
msgid "No matches found"
msgstr "Ingen søgeresultater fundet"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Skift versaltype"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Store bogstaver"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Små bogstaver"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Skift store/små bogstaver"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Titel STORE/små bogstaver"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Store begyndelsesbogstaver"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Ugyldigt forfatternavn"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Forfatternavne kan ikke indeholde & tegnet."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Administrér forfattere"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Søg efter:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Sortér efter forfatter"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Sortér efter forfatter sortering"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Genberegn alle forfattersorteringsværdier"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -8187,34 +8330,34 @@ msgstr "Vis opgave&detaljer"
msgid "Stop &all non device jobs"
msgstr "Stop &alle ikke-enhedsopgaver"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Kopieret"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Kopiér til udklipsholder"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8229,7 +8372,7 @@ msgid "Standard metadata"
msgstr "Standard metadata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Tilpas metadata"
@@ -8242,26 +8385,6 @@ msgstr "Søg/Erstat"
msgid "Working"
msgstr "Arbejder"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Små bogstaver"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Store bogstaver"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Titel STORE/små bogstaver"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Store begyndelsesbogstaver"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Tegn match"
@@ -8469,7 +8592,7 @@ msgstr "Tilføj &mærker: "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Åben mærke-editor"
@@ -8530,7 +8653,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Dato:"
@@ -8610,13 +8733,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "&Grund metadata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "&Tilpas metadata"
@@ -9287,7 +9410,7 @@ msgid "Choose formats"
msgstr "Vælg formater"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Forfattere"
@@ -9829,7 +9952,7 @@ msgid "Attached, you will find the e-book"
msgstr "Tilknyttet, vil du finde e-bogen"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "af"
@@ -10082,49 +10205,49 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Skub denne enhed ud"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Vis bøger i calibre-bibliotek"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Vis bøger i enhedens arbejdshukommelse"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "Kort A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Vis bøger i hukommelseskort A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "Kort B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Vis bøger i hukommelseskort B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "tilgængelige"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Shift+Ctrl+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Avanceret søgning"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Søg i listen af bøger efter titel, forfatter, udgiver, mærker, "
"kommentarer, osv. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7974,14 +8087,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Ungültige Vorlage"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "Die Vorlage %s ist ungültig:"
@@ -8419,13 +8532,13 @@ msgid "Where do you want to delete from?"
msgstr "Von wo möchten Sie löschen?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Bibliothek"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Gerät"
@@ -8455,7 +8568,7 @@ msgstr "Ort"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8498,40 +8611,82 @@ msgstr "Autorensortierung"
msgid "No matches found"
msgstr "Keine Treffer gefunden"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Groß-/Kleinschreibung ändern"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Großschreibung"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Kleinschreibung"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Groß-/Kleinschreibung vertauschen"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Wortanfänge groß schreiben"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Großschreiben"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Ungültiger Autorenname"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Autorennamen dürfen nicht das Zeichen & enthalten."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Autoren verwalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Suchen nach:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "F&inden"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Sortierung nach Autoren"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Sortierung nach Autorensortierung"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
@@ -8542,11 +8697,11 @@ msgstr ""
"Wie genau dieser Wert erzeugt wird, kann in Einstellungen->\n"
"Erweitert->Kniffe eingestellt werden."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Neuerzeugung aller Sortierung nach Autor- Werte"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
@@ -8557,7 +8712,7 @@ msgstr ""
">Kniffe->\n"
"Algorithmus für Autorensortierung"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr "Kopiert alle Sortierung nach Autor- Einträge ins Autorenfeld"
@@ -8581,34 +8736,34 @@ msgstr "Zeige Auftrag&details"
msgid "Stop &all non device jobs"
msgstr "&Alle geräteunabhängigen Aufträge beenden"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr "In &Zwischenablage kopieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr "&Details anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr "&Details verbergen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr "Detaillierte Informationen über diesen Fehler anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Kopiert"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "In die Zwischenablage kopieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8623,7 +8778,7 @@ msgid "Standard metadata"
msgstr "Standard Metadaten"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Benutzerdefinierte Metadaten"
@@ -8636,26 +8791,6 @@ msgstr "Suchen/Ersetzen"
msgid "Working"
msgstr "Bei der Arbeit..."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Kleinschreibung"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Großschreibung"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Wortanfänge groß schreiben"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Großschreiben"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Wortsuche"
@@ -8873,7 +9008,7 @@ msgstr "Etiketten hinzufü&gen: "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Etiketten-Editor öffnen"
@@ -8934,7 +9069,7 @@ msgid "&Force numbers to start with:"
msgstr "Start der &Numerierung mit:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Datum:"
@@ -9019,13 +9154,13 @@ msgid "Set from &ebook file(s)"
msgstr "Aus &Ebook- Datei(en) setzen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "&Basis-Metadaten"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "Ben&utzerdefinierte Metadaten"
@@ -9778,7 +9913,7 @@ msgid "Choose formats"
msgstr "Formate auswählen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Autoren"
@@ -10334,7 +10469,7 @@ msgid "Attached, you will find the e-book"
msgstr "Im Anhang finden Sie das eBook"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "von"
@@ -10598,49 +10733,49 @@ msgstr "Möchten sie wirklich den ausgewählten Auftrag anhalten?"
msgid "Do you really want to stop all non-device jobs?"
msgstr "Möchten sie wirklich alle nicht- Geräte- Aufträge anhalten?"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Diese Gerät auswerfen"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Zeige Bücher in Calibre Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Zeige Bücher im Hauptspeicher des Geräts"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "Karte A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Zeige Bücher auf Speicherkarte A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "Karte B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Zeige Bücher auf Speicherkarte B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Shift+Strg+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Erweiterte Suche"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7272,14 +7373,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7691,13 +7792,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7725,7 +7826,7 @@ msgstr "Τοποθεσία"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7762,57 +7863,99 @@ msgstr ""
msgid "No matches found"
msgstr "Δεν βρέθηκαν αντιστοιχίες."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Εναλλαγή Κεφαλαία-Μικρά"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Κεφαλαία"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Πεζά"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Κεφαλαία/Πεζά Τίτλου"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7836,34 +7979,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Αντιγραφή στο πρόχειρο"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7878,7 +8021,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7891,26 +8034,6 @@ msgstr ""
msgid "Working"
msgstr "Σε εργασία"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Πεζά"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Κεφαλαία"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Κεφαλαία/Πεζά Τίτλου"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -8090,7 +8213,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -8142,7 +8265,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "Η&μερομηνία:"
@@ -8216,13 +8339,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8874,7 +8997,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Συγγραφείς"
@@ -9386,7 +9509,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "από"
@@ -9638,74 +9761,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "διαθέσιμο"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Σύνθετη Αναζήτηση"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7099,14 +7200,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7518,13 +7619,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7552,7 +7653,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7589,57 +7690,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7663,34 +7806,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7705,7 +7848,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7718,26 +7861,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7917,7 +8040,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7969,7 +8092,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8043,13 +8166,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8701,7 +8824,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9213,7 +9336,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9465,74 +9588,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7187,14 +7288,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7606,13 +7707,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7640,7 +7741,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7677,57 +7778,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7751,34 +7894,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7793,7 +7936,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7806,26 +7949,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -8005,7 +8128,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -8057,7 +8180,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8131,13 +8254,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8789,7 +8912,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9301,7 +9424,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9553,74 +9676,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7740,14 +7841,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Invalid template"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "The template %s is invalid:"
@@ -8176,13 +8277,13 @@ msgid "Where do you want to delete from?"
msgstr "Where do you want to delete from?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Library"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Device"
@@ -8212,7 +8313,7 @@ msgstr "Location"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8249,57 +8350,99 @@ msgstr "Author sort"
msgid "No matches found"
msgstr "No matches found"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Change Case"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Upper Case"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Lower Case"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Swap Case"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Title Case"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Capitalize"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Invalid author name"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Author names cannot contain & characters."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Manage authors"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Search for:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "F&ind"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Sort by author"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Sort by author sort"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Recalculate all author sort values"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -8323,34 +8466,34 @@ msgstr "Show job &details"
msgid "Stop &all non device jobs"
msgstr "Stop &all non device jobs"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr "&Copy to clipboard"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr "Show &details"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr "Hide &details"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr "Show detailed information about this error"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Copied"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Copy to clipboard"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8365,7 +8508,7 @@ msgid "Standard metadata"
msgstr "Standard metadata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Custom metadata"
@@ -8378,26 +8521,6 @@ msgstr "Search/Replace"
msgid "Working"
msgstr "Working"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Lower Case"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Upper Case"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Title Case"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Capitalize"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Character match"
@@ -8607,7 +8730,7 @@ msgstr "Add ta&gs: "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Open Tag Editor"
@@ -8666,7 +8789,7 @@ msgid "&Force numbers to start with:"
msgstr "&Force numbers to start with:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Date:"
@@ -8748,13 +8871,13 @@ msgid "Set from &ebook file(s)"
msgstr "Set from &ebook file(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "&Basic metadata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "&Custom metadata"
@@ -9444,7 +9567,7 @@ msgid "Choose formats"
msgstr "Choose formats"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Authors"
@@ -9984,7 +10107,7 @@ msgid "Attached, you will find the e-book"
msgstr "Attached, you will find the e-book"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "by"
@@ -10247,49 +10370,49 @@ msgstr "Do you really want to stop the selected job?"
msgid "Do you really want to stop all non-device jobs?"
msgstr "Do you really want to stop all non-device jobs?"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Eject this device"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Show books in calibre library"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Show books in the main memory of the device"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "Card A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Show books on storage card A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "Card B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Show books on storage card B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "available"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Shift+Ctrl+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Advanced search"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7135,14 +7236,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7554,13 +7655,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7588,7 +7689,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7625,57 +7726,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7699,34 +7842,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7741,7 +7884,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7754,26 +7897,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7953,7 +8076,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -8005,7 +8128,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8079,13 +8202,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8737,7 +8860,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9249,7 +9372,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9501,74 +9624,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -8014,14 +8126,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Plantilla no válida"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "La plantilla %s no es válida:"
@@ -8519,13 +8631,13 @@ msgid "Where do you want to delete from?"
msgstr "¿De dónde quiere borrar?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Biblioteca"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Dispositivo"
@@ -8555,7 +8667,7 @@ msgstr "Ubicación"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8597,40 +8709,82 @@ msgstr "Orden de autor"
msgid "No matches found"
msgstr "No se encontraron coincidencias"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Cambiar mayúsculas/minúsculas"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Mayúsculas"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Minúsculas"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Invertir mayúsculas/minúsculas"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Formato de título (todas las iniciales en mayúscula)"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Poner en mayúsculas"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr "Copiar en orden de autor"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr "Copiar en autor"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Nombre de autor no válido"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Los nombres de autor no pueden contener «&»."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Administrar autores"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Buscar:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "Buscar"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Ordenar por autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Ordenar por orden de autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
@@ -8641,11 +8795,11 @@ msgstr ""
"que este valor se genera puede controlarse en\n"
"Preferencias->Avanzada->Ajustes"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Recalcular todos los órdenes de autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
@@ -8654,7 +8808,7 @@ msgstr ""
"Lo normal es usar este botón después de modificar\n"
"Preferencias->Avanzada->Ajustes->Algoritmo de orden de autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr "Copiar todos valores de orden de autor a autor"
@@ -8678,34 +8832,34 @@ msgstr "Mostrar &detalles de la tarea"
msgid "Stop &all non device jobs"
msgstr "Detener &todas las tareas que no sean de dispositivos"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr "&Copiar al portapapeles"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr "Mostrar &detalles"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr "Ocultar &detalles"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr "Mostrar información detallada sobre este error"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Copiado"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Copiar al portapapeles"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8720,7 +8874,7 @@ msgid "Standard metadata"
msgstr "Metadatos estándar"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Metadatos personalizados"
@@ -8733,26 +8887,6 @@ msgstr "Buscar/Reemplazar"
msgid "Working"
msgstr "Procesando..."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Minúsculas"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Mayúsculas"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Formato de título (todas las iniciales en mayúscula)"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Poner en mayúsculas"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Coincidencia de caracter"
@@ -8968,7 +9102,7 @@ msgstr "Añadir eti&quetas: "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Abrir editor de etiquetas"
@@ -9030,7 +9164,7 @@ msgid "&Force numbers to start with:"
msgstr "&Obligar a que los números empiecen por:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Fecha:"
@@ -9115,13 +9249,13 @@ msgid "Set from &ebook file(s)"
msgstr "Establecer a partir del (los) &fichero(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "Metadatos &básicos"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "Metadatos &personalizados"
@@ -9865,7 +9999,7 @@ msgid "Choose formats"
msgstr "Elegir formatos"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Autores"
@@ -10415,7 +10549,7 @@ msgid "Attached, you will find the e-book"
msgstr "El libro electrónico está adjunto"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "por"
@@ -10682,49 +10816,49 @@ msgid "Do you really want to stop all non-device jobs?"
msgstr ""
"¿De verdad quiere detener todos los trabajos que no son de dispositivos?"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Desconectar dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Mostrar los libros en la biblioteca de calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Mostrar los libros de la memoria principal del dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "Tarjeta A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Mostrar los libros de la tarjeta de memoria A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "Tarjeta B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Mostrar los libros de la tarjeta de memoria B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Mayús+Ctrl+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Búsqueda avanzada"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. If you do not want calibre to recognize your Apple iDevice when it is "
+"connected to your computer, click Disable Apple Driver. To "
+"transfer books to your iDevice, click Disable Apple Driver, then use "
+"the 'Connect to iTunes' method recommended in the Calibre + "
+"iDevices FAQ, using the Connect/Share|Connect to "
+"iTunes menu item. Enabling the Apple driver for direct connection "
+"to iDevices is an unsupported advanced user mode. or or calibre can scan your computer for existing books automatically. These "
+"books will then be copied into the calibre library. This wizard will "
+"help you customize the scanning and import process for your existing book "
+"collection. Choose a root folder. Books will be searched for only inside this folder "
+"and any sub-folders. Make sure that the folder you chose for your calibre library is "
+"not under the root folder you choose. Default pattern \n"
+"\\[.+\\]\n"
+"excludes tags of the form [tag], \n"
+"e.g., [Project Gutenberg] Comma-separated list of tags to exclude.\n"
+"Default: ~,Catalog"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:315
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:320
+msgid "&Column/value"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:316
+msgid "Column containing additional exclusion criteria"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:317
+msgid "Exclusion pattern"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:318
+msgid "Matching books will be displayed with a check mark"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:319
+msgid "Read books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:321
+msgid "Column containing 'read' status"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:322
+msgid "'read book' pattern"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:323
+msgid "Other options"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:324
+msgid "&Wishlist tag"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:325
+msgid "Books tagged as Wishlist items will be displayed with an X"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:326
+msgid "&Thumbnail width"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:327
+msgid "Size hint for Description cover thumbnails"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:328
+msgid " inch"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:329
+msgid "&Description note"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:330
+msgid "Custom column source for note to include in Description header area"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:331
+msgid "&Merge with Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:332
+msgid "Additional content merged with Comments during catalog generation"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:333
+msgid "Merge additional content before Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:334
+msgid "&Before"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:335
+msgid "Merge additional content after Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:336
+msgid "&After"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:337
+msgid "Separate Comments and additional content with horizontal rule"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:338
+msgid "&Separator"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:33
+msgid "Tab template for catalog.ui"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:69
+msgid "Bold"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:70
+msgid "Italic"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:73
+msgid "Underline"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:75
+msgid "Strikethrough"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:77
+msgid "Superscript"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:79
+msgid "Subscript"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:81
+msgid "Ordered list"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:83
+msgid "Unordered list"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:86
+msgid "Align left"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:88
+msgid "Align center"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:90
+msgid "Align right"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:92
+msgid "Align justified"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:93
+msgid "Undo"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:94
+msgid "Redo"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:95
+msgid "Remove formatting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:134
+msgid "Copy"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:136
+msgid "Paste"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:98
+msgid "Cut"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:100
+msgid "Increase Indentation"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:102
+msgid "Decrease Indentation"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:104
+msgid "Select all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:109
+msgid "Foreground color"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:114
+msgid "Background color"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:118
+msgid "Style text block"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:120
+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: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 ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:127
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:128
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:129
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:131
+msgid "Heading"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:132
+msgid "Pre-formatted"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:133
+msgid "Blockquote"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:134
+msgid "Address"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:141
+msgid "Insert link"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:84
+msgid "Clear"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:161
+msgid "Choose foreground color"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:167
+msgid "Choose background color"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:172
+msgid "Create link"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:173
+msgid "Enter URL"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:523
+msgid "Normal view"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:524
+msgid "HTML Source"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:40
+msgid ""
+"For settings that cannot be specified in this dialog, use the values saved "
+"in a previous conversion (if they exist) instead of using the defaults "
+"specified in the Preferences"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:74
+msgid "Bulk Convert"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:189
+msgid "Options specific to the output format."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input.py:15
+msgid "Comic Input"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input.py:16
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input.py:13
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input.py:13
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input.py:13
+msgid "input"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:99
+msgid "&Number of Colors:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:101
+msgid "Disable &normalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:102
+msgid "Keep &aspect ratio"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:103
+msgid "Disable &Sharpening"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:108
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:109
+msgid "Disable &Trimming"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:108
+msgid "&Wide"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:104
+msgid "&Landscape"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:106
+msgid "&Right to left"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:105
+msgid "Don't so&rt"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:107
+msgid "De&speckle"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:114
+msgid "&Disable comic processing"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single_ui.py:120
+msgid "&Output format:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:116
+msgid "Disable conversion of images to &black and white"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:117
+msgid "Override image &size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:118
+msgid "Don't add links to &pages to the Table of Contents for CBC files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:19
+msgid "Debug"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:21
+msgid "Debug the conversion process."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:39
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:56
+msgid "Choose debug folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:58
+msgid "Invalid debug directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:59
+msgid "Failed to create debug directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:55
+msgid ""
+"Choose a folder to put the debug output into. If you specify a folder, "
+"calibre will place a lot of debug output into it. This will be useful in "
+"understanding the conversion process and figuring out the correct values for "
+"conversion parameters like Table of Contents and Chapter Detection."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:59
+msgid ""
+"The debug process outputs the intermediate HTML generated at various stages "
+"of the conversion process. This HTML can sometimes serve as a good starting "
+"point for hand editing a conversion."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output.py:15
+msgid "EPUB Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:57
+msgid "Do not &split on page breaks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:58
+msgid "No default &cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:59
+msgid "No &SVG cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:60
+msgid "Preserve cover &aspect ratio"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:61
+msgid "Split files &larger than:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:62
+msgid " KB"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:63
+msgid "&Flatten EPUB file structure"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input.py:12
+msgid "FB2 Input"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:34
+msgid "Do not insert a &Table of Contents at the beginning of the book."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output.py:14
+msgid "FB2 Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:45
+msgid "Sectionize:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:46
+msgid "Genre"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:104
+msgid "Font rescaling wizard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/font_key_ui.py:105
+msgid ""
+" This wizard will help you choose an appropriate font size key for your "
+"needs. Just enter the base font size of the input document and then enter an "
+"input font size. The wizard will display what font size it will be mapped "
+"to, by the font rescaling algorithm. You can adjust the algorithm by "
+"adjusting the output base font size and font key below. When you find values "
+"suitable for you, click OK. By default, if the output base font size is zero and/or no font size key "
+"is specified, calibre will use the values from the current Output Profile. "
+" See the User Manual "
+"for a discussion of how font size rescaling works. When calibre removes inter paragraph spacing, it automatically sets a "
+"paragraph indent, to ensure that paragraphs can be easily distinguished. "
+"This option controls the width of that indent."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:150
+msgid " em"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:151
+msgid "Text justification:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:152
+msgid "&Linearize tables"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:153
+msgid "Extra &CSS"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:154
+msgid "&Transliterate unicode characters to ASCII"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:155
+msgid "Insert &blank line"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:156
+msgid "Keep &ligatures"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:157
+msgid "Smarten &punctuation"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:158
+msgid "Minimum &line height:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:159
+msgid " %"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:19
+msgid "LRF Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:121
+msgid "Enable &autorotation of wide images"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:122
+msgid "&Wordspace:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:124
+msgid "Minimum para. &indent:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:126
+msgid "Render &tables as images"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:127
+msgid "Text size multiplier for text in rendered tables:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:128
+msgid "Add &header"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:129
+msgid "Header &separation:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:131
+msgid "Header &format:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:132
+msgid "&Embed fonts"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:133
+msgid "&Serif font family:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:134
+msgid "S&ans-serif font family:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:135
+msgid "&Monospaced font family:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:117
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:200
+msgid "Metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:49
+msgid ""
+"Set the metadata. The output file will contain as much of this metadata as "
+"possible."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180
+#: /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/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/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/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/metadata/basic_widgets.py:744
+msgid " There was an error reading from file: Search and replace uses regular expressions. See the regular "
+"expressions tutorial to get started with regular expressions. Also "
+"clicking the wizard buttons below will allow you to test your regular "
+"expression against the current input document."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:173
+msgid "Convert"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:200
+msgid "Options specific to the input format."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single_ui.py:117
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box_ui.py:52
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/cache_progress_dialog_ui.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:61
+msgid "Dialog"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single_ui.py:118
+msgid "&Input format:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/single_ui.py:119
+msgid "Use &saved conversion settings for individual books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output.py:14
+msgid "SNB Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:43
+msgid "Hide chapter name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:44
+msgid "Don't indent the first line for each paragraph"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:45
+msgid "Insert empty line between paragraphs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:46
+msgid "Optimize for full-sceen view "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:15
+msgid ""
+"Structure\n"
+"Detection"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:17
+msgid ""
+"Fine tune the detection of chapter headings and other document structure."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:31
+msgid "Detect chapters at (XPath expression):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:32
+msgid "Insert page breaks before (XPath expression):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:42
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:39
+msgid "Invalid XPath"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:40
+msgid "The XPath expression %s is invalid."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:60
+msgid "Chapter &mark:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:61
+msgid "Remove first &image"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:62
+msgid "Insert &metadata as page at start of book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:63
+msgid ""
+"The header and footer removal options have been replaced by the Search & "
+"Replace options. Click the Search & Replace category in the bar to the left "
+"to use these options. Leave the replace field blank and enter your "
+"header/footer removal regexps into the search field."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:64
+msgid "Remove &fake margins"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:16
+msgid ""
+"Table of\n"
+"Contents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:18
+msgid "Control the creation/conversion of the Table of Contents."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:30
+msgid "Level &1 TOC (XPath expression):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:31
+msgid "Level &2 TOC (XPath expression):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:32
+msgid "Level &3 TOC (XPath expression):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:68
+msgid "Do not add &detected chapters to the Table of Contents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:69
+msgid "Number of &links to add to Table of Contents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:70
+msgid "Chapter &threshold"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:71
+msgid "&Force use of auto-generated Table of Contents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:72
+msgid "TOC &Filter:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input.py:12
+msgid "TXT Input"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:92
+msgid "Structure"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:93
+msgid "Paragraph style:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:94
+msgid "Formatting style:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:95
+msgid "Common"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:96
+msgid "Preserve &spaces"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:97
+msgid "Remove indents at the beginning of lines"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:98
+msgid "Markdown"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:99
+msgid ""
+" Markdown is a simple markup language for text files, that allows for "
+"advanced formatting. To learn more visit markdown."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:100
+msgid "Do not insert Table of Contents into output text when using markdown"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:13
+msgid "TXT Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
+msgid "General"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
+msgid "Output &Encoding:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
+msgid "&Line ending style:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
+msgid "&Formatting:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
+msgid "Plain"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
+msgid "&Maximum line length:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
+msgid "Force maximum line length"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:96
+msgid "Markdown, Textile"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:97
+msgid "Do not remove links ( tags) before processing"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:98
+msgid "Do not remove image references before processing"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:99
+msgid "Keep text color, when possible"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txtz_output.py:12
+msgid "TXTZ Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_ui.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:55
+msgid "TextLabel"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:56
+msgid "Use a wizard to help construct the Regular expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:73
+msgid "Match HTML &tags with tag name:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:74
+msgid "*"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:75
+msgid "a"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:76
+msgid "br"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:77
+msgid "div"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:78
+msgid "h1"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:79
+msgid "h2"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:80
+msgid "h3"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:81
+msgid "h4"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:82
+msgid "h5"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:83
+msgid "h6"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:84
+msgid "hr"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:85
+msgid "span"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:86
+msgid "Having the &attribute:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:87
+msgid "With &value:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:88
+msgid "(A regular expression)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:89
+msgid ""
+" For example, to match all h2 tags that have class=\"chapter\", set tag to "
+"h2, attribute to class and value to "
+"chapter. Leaving attribute blank will match any attribute and "
+"leaving value blank will match any value. Setting tag to * will match any "
+"tag. To learn more advanced usage of XPath see the XPath Tutorial."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:128
+msgid "Browse by covers"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:158
+msgid "Cover browser could not be loaded"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:302
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:608
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:682
+#: /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/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:1117
+msgid "Undefined"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
+msgid "star(s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:127
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:640
+msgid "Unrated"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
+msgid "Set '%s' to today"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:671
+msgid "Clear '%s'"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:298
+msgid " index:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:367
+msgid ""
+"The enumeration \"{0}\" contains an invalid value that will be set to the "
+"default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:522
+msgid "Apply changes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:715
+msgid "Remove series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:718
+msgid "Automatically number books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:721
+msgid "Force numbers to start with "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:792
+msgid ""
+"The enumeration \"{0}\" contains invalid values that will not appear in the "
+"list"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:836
+msgid "Remove all tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:856
+msgid "tags to add"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:863
+msgid "tags to remove"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:43
+#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:144
+msgid "No details available."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:168
+msgid "Device no longer connected."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:291
+msgid "Get device information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:305
+msgid "Get list of books on device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:315
+msgid "Get annotations from device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327
+msgid "Send metadata to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332
+msgid "Send collections to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:368
+msgid "Upload %d books to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:383
+msgid "Delete books from device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:400
+msgid "Download books from device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:410
+msgid "View book on device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:451
+msgid "Set default send to device action"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:457
+msgid "Send to main memory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:459
+msgid "Send to storage card A"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:461
+msgid "Send to storage card B"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:466
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:475
+msgid "Main Memory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487
+msgid "Send specific format to"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488
+msgid "Send and delete from library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:531
+msgid "Eject device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:313
+#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
+msgid "Error"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:612
+msgid "Error communicating with device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1170
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:221
+msgid "No suitable formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:647
+msgid "Select folder to open as device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:698
+msgid "Error talking to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:699
+msgid ""
+"There was a temporary error talking to the device. Please unplug and "
+"reconnect the device and or reboot."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
+msgid "Device: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
+msgid " detected."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846
+msgid "selected to send"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
+msgid "%i of %i Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868
+msgid "0 of %i Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869
+msgid "Choose format to send to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+msgid "No device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+msgid "Cannot send: No device is connected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:885
+msgid "No card"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:886
+msgid "Cannot send: Device has no storage card"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1030
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1164
+msgid "Auto convert the following books before uploading to the device?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:976
+msgid "Sending catalogs to device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1077
+msgid "Sending news to device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1131
+msgid "Sending books to device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1171
+msgid ""
+"Could not upload the following books to the device, as no suitable formats "
+"were found. Convert the book(s) to a format supported by your device first."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243
+msgid "No space on device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244
+msgid ""
+" Cannot upload books to device there is no more free space available "
+msgstr ""
+
+#: /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: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:148
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:409
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:293
+#: /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:149
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:294
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
+msgid "The template %s is invalid:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:78
+msgid "Select available formats and their order for this device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:82
+msgid ""
+"If checked, books are placed into sub directories based on their metadata on "
+"the device. If unchecked, books are all put into the top level directory."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:83
+msgid "Use sub directories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:84
+msgid "Use author sort for author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:85
+msgid "Save &template:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:20
+msgid "How many empty books?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:25
+msgid "How many empty books should be added?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:33
+msgid "Set the author of the new books to:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:45
+msgid "Reset author to Unknown"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_from_isbn_ui.py:63
+msgid "Add books by ISBN"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_from_isbn_ui.py:64
+msgid "&Paste from clipboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_from_isbn_ui.py:65
+msgid ""
+" Enter a list of ISBNs in the box to the left, one per line. calibre will "
+"automatically create entries for books based on the ISBN and download "
+"metadata and covers for them. Any invalid ISBNs in the list will be ignored. You can also specify a file that will be added with each ISBN. To do this "
+"enter the full path to the file after a calibre stores the list of your books and their metadata in a\n"
+" database. The actual book files and covers are stored as normal\n"
+" files in the calibre library folder. The database contains a list of "
+"the files\n"
+" and covers belonging to each book entry. This tool checks that the\n"
+" actual files in the library folder on your computer match the\n"
+" information in the database. The result of each type of check is shown to the left. The "
+"various\n"
+" checks are:\n"
+" There are two kinds of automatic fixes possible: Delete\n"
+" marked and Fix marked. Delete marked is used to remove extra files/folders/covers "
+"that\n"
+" have no entries in the database. Check the box next to the item you "
+"want\n"
+" to delete. Use with caution. Fix marked is applicable only to covers and missing "
+"formats\n"
+" (the three lines marked 'fixable'). In the case of missing cover "
+"files,\n"
+" checking the fixable box and pushing this button will tell calibre "
+"that\n"
+" there is no cover for all of the books listed. Use this option if "
+"you\n"
+" are not going to restore the covers from a backup. In the case of "
+"extra\n"
+" cover files, checking the fixable box and pushing this button will "
+"tell\n"
+" calibre that the cover files it found are correct for all the books\n"
+" listed. Use this when you are not going to delete the file(s). In "
+"the\n"
+" case of missing formats, checking the fixable box and pushing this\n"
+" button will tell calibre that the formats are really gone. Use this "
+"if\n"
+" you are not going to restore the formats from a backup. This book is locked by DRM. To learn more about DRM and why you "
+"cannot read or convert this book in calibre, \n"
+" click "
+"here. A large number of recent, DRM free releases are \n"
+" available at Open "
+"Books."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:43
+msgid "Author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:104
+#: /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/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
+msgid "Invalid author name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
+msgid "Author names cannot contain & characters."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
+msgid "Manage authors"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
+#: /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/edit_authors_dialog_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
+msgid "F&ind"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+msgid "Sort by author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+msgid "Sort by author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+msgid ""
+"Reset all the author sort values to a value automatically\n"
+"generated from the author. Exactly how this value is automatically\n"
+"generated can be controlled via Preferences->Advanced->Tweaks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
+msgid "Recalculate all author sort values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
+msgid ""
+"Copy author sort to author for every author. You typically use this button\n"
+"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+msgid "Copy all author sort values to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/job_view_ui.py:45
+msgid "Details of job"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:49
+msgid "Active Jobs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:50
+msgid "&Stop selected job"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:51
+msgid "Show job &details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:52
+msgid "Stop &all non device jobs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+msgid "&Copy to clipboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+msgid "Show &details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
+msgid "Hide &details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
+msgid "Show detailed information about this error"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
+msgid "Copied"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
+msgid "Copy to clipboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
+msgid "View log"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:58
+msgid "Title/Author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:59
+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:852
+msgid "Custom metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:61
+msgid "Search/Replace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress.py:76
+msgid "Working"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
+msgid "Character match"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:267
+msgid "Regular Expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:270
+msgid "Replace field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:271
+msgid "Prepend to field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:272
+msgid "Append to field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:282
+msgid "Editing meta information for %d books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:323
+msgid ""
+"Immediately make all changes without closing the dialog. This operation "
+"cannot be canceled or undone"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:382
+msgid "Book %d:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:400
+msgid "Enter an identifier type"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:405
+msgid ""
+"You can destroy your library using this feature. Changes are "
+"permanent. There is no undo function. You are strongly encouraged to back up "
+"your library before proceeding. Search and replace in text fields using "
+"character matching or regular expressions. "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:413
+msgid ""
+"In character mode, the field is searched for the entered search text. The "
+"text is replaced by the specified replacement text everywhere it is found in "
+"the specified field. After replacement is finished, the text can be changed "
+"to upper-case, lower-case, or title-case. If the case-sensitive check box is "
+"checked, the search text must match exactly. If it is unchecked, the search "
+"text will match both upper- and lower-case letters"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:424
+msgid ""
+"In regular expression mode, the search text is an arbitrary python-"
+"compatible regular expression. The replacement text can contain "
+"backreferences to parenthesized expressions in the pattern. The search is "
+"not anchored, and can match and replace multiple times on the same string. "
+"The modification functions (lower-case etc) are applied to the matched text, "
+"not to the field as a whole. The destination box specifies the field where "
+"the result after matching and replacement is to be assigned. You can replace "
+"the text in the field, or prepend or append the matched text. See this reference for more "
+"information on python's regular expressions, and in particular the 'sub' "
+"function."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:502
+msgid "S/R TEMPLATE ERROR"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:648
+msgid "You must specify a destination when source is a composite field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:654
+msgid "You must specify a destination identifier type"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:761
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:780
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:907
+msgid "Search/replace invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:762
+msgid ""
+"Authors cannot be set to the empty string. Book title %s not processed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:781
+msgid "Title cannot be set to the empty string. Book title %s not processed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:908
+msgid "Search pattern is invalid: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:960
+msgid ""
+"Applying changes to %d books.\n"
+"Phase {0} {1}%%."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:990
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:587
+msgid "Delete saved search/replace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:991
+msgid "The selected saved search/replace will be deleted. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1008
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1016
+msgid "Save search/replace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1009
+msgid "Search/replace name:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1017
+msgid ""
+"That saved search/replace already exists and will be overwritten. Are you "
+"sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:524
+msgid "Edit Meta information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:526
+msgid "A&utomatically set author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:527
+msgid "&Swap title and author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:528
+msgid "Author s&ort: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:529
+msgid ""
+"Specify how the author(s) of this book should be sorted. For example Charles "
+"Dickens should be sorted as Dickens, Charles."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:530
+#: /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/metadata/basic_widgets.py:868
+msgid "Rating of this book. 0-5 stars"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:533
+msgid "No change"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:534
+msgid " stars"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:536
+msgid "Add ta&gs: "
+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/metadata/single.py:166
+msgid "Open Tag Editor"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:540
+msgid "&Remove tags:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:541
+msgid "Comma separated list of tags to remove from the books. "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:542
+msgid "Check this box to remove all tags from the books."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:543
+msgid "Remove &all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:547
+msgid "If checked, the series will be cleared"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:548
+msgid "&Clear series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:549
+msgid ""
+"If not checked, the series number for the books will be set to 1.\n"
+"If checked, selected books will be automatically numbered, in the order\n"
+"you selected them. So if you selected Book A and then Book B,\n"
+"Book A will have series number 1 and Book B series number 2."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:553
+msgid "&Automatically number books in this series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:554
+msgid ""
+"Series will normally be renumbered from the highest number in the database\n"
+"for that series. Checking this box will tell calibre to start numbering\n"
+"from the value in the box"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:557
+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/metadata/basic_widgets.py:1101
+msgid "&Date:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:559
+msgid "d MMM yyyy"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:561
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:566
+msgid "&Apply date"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:562
+msgid "&Published:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:564
+msgid "Clear published date"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:567
+msgid "Remove &format:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:568
+msgid ""
+"Force the title to be in title case. If both this and swap authors are "
+"checked,\n"
+"title and author are swapped before the title case is set"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:570
+msgid "Change title to title &case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:571
+msgid ""
+"Update title sort based on the current title. This will be applied only "
+"after other changes to title."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:572
+msgid "Update &title sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:573
+msgid ""
+"Remove stored conversion settings for the selected books.\n"
+"\n"
+"Future conversion of these books will use the default settings."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:576
+msgid "Remove &stored conversion settings for the selected books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:577
+msgid "Change &cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:578
+msgid "&Generate default cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:579
+msgid "&Remove cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:580
+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/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
+msgid "&Basic metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
+msgid "&Custom metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:583
+msgid "Load searc&h/replace:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:584
+msgid "Select saved search/replace to load."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:585
+msgid "Save current search/replace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:586
+msgid "Sa&ve"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:588
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:64
+msgid "Delete"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:589
+msgid "Search &field:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:590
+msgid "The name of the field that you want to search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:591
+msgid "Search &mode:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:592
+msgid ""
+"Choose whether to use basic text matching or advanced regular expression "
+"matching"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:593
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:615
+msgid "Identifier type:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:594
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:616
+msgid "Choose which identifier type to operate upon"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:595
+msgid "Te&mplate:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:596
+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:598
+msgid ""
+"Enter the what you are looking for, either plain text or a regular "
+"expression, depending on the mode"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:599
+msgid ""
+"Check this box if the search string must match exactly upper and lower case. "
+"Uncheck it if case is to be ignored"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:600
+msgid "Cas&e sensitive"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:601
+msgid "&Replace with:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:602
+msgid ""
+"The replacement text. The matched search text will be replaced with this "
+"string"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:603
+msgid "&Apply function after replace:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:604
+msgid ""
+"Specify how the text is to be processed after matching and replacement. In "
+"character mode, the entire\n"
+"field is processed. In regular expression mode, only the matched text is "
+"processed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:606
+msgid "&Destination field:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:607
+msgid ""
+"The field that the text will be put into after all replacements.\n"
+"If blank, the source field is used if the field is modifiable"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:609
+msgid "M&ode:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:610
+msgid "Specify how the text should be copied into the destination."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:611
+msgid ""
+"Specifies whether result items should be split into multiple values or\n"
+"left as single values. This option has the most effect when the source field "
+"is\n"
+"not multiple and the destination field is multiple"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:614
+msgid "Split &result"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:617
+msgid "For multiple-valued fields, sho&w"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:618
+msgid "values starting a&t"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:619
+msgid "with values separated b&y"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:620
+msgid ""
+"Used when displaying test results to separate values in multiple-valued "
+"fields"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:621
+msgid "Test text"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:622
+msgid "Test result"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:623
+msgid "Your test:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:624
+msgid "&Search and replace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:61
+msgid "Password needed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:205
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:133
+msgid "&Username:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:135
+msgid "&Password:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server_ui.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173
+msgid "&Show password"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress.py:59
+msgid "Aborting..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:23
+msgid ""
+"Restoring database from backups, do not interrupt, this will happen in three "
+"stages"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:25
+msgid "Restoring database"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:79
+msgid ""
+"Your list of books, with all their metadata is stored in a single file, "
+"called a database. In addition, metadata for each individual book is stored "
+"in that books' folder, as a backup. This operation will rebuild the "
+"database from the individual book metadata. This is useful if the database "
+"has been corrupted and you get a blank list of books. Note that restoring "
+"only restores books, not any settings stored in the database, or any custom "
+"recipes. Do you want to restore the database?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:102
+msgid "Restoring database failed, click Show details to see details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:107
+msgid ""
+"Restoring the database succeeded with some warnings click Show details to "
+"see the details."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:112
+msgid "Restoring database was successful"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:75
+msgid "Saved search already exists"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:76
+msgid "The saved search %s already exists, perhaps with different case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:62
+msgid ""
+"The current saved search will be permanently deleted. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94
+msgid "Saved Search Editor"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95
+msgid "Saved Search: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96
+msgid "Select a saved search to edit"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:97
+msgid "Delete this selected saved search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:99
+msgid "Enter a new saved search name."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:100
+msgid "Add the new saved search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:102
+msgid "Rename the current search to what is in the box"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:104
+msgid "Change the contents of the saved search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42
+msgid ""
+" Download this periodical every week on the specified days "
+"after\n"
+" the specified time. For example, if you choose: Monday "
+"after\n"
+" 9:00 AM, then the periodical will be download every Monday "
+"as\n"
+" soon after 9:00 AM as possible.\n"
+" "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:61
+msgid "&Download after:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:91
+msgid ""
+" Download this periodical every month, on the specified "
+"days.\n"
+" The download will happen as soon after the specified time "
+"as\n"
+" possible on the specified days of each month. For example,\n"
+" if you choose the 1st and the 15th after 9:00 AM, the\n"
+" periodical will be downloaded on the 1st and 15th of every\n"
+" month, as soon after 9:00 AM as possible.\n"
+" "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:103
+msgid "&Days of the month:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:105
+msgid "Comma separated list of days of the month. For example: 1, 15"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:109
+msgid "Download &after:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:142
+msgid ""
+" Download this periodical every x days. For example, if you\n"
+" choose 30 days, the periodical will be downloaded every 30\n"
+" days. Note that you can set periods of less than a day, "
+"like\n"
+" 0.1 days to download a periodical more than once a day.\n"
+" "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:151
+msgid "&Download every:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:154
+msgid "every hour"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:157
+msgid "days"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:161
+msgid ""
+"Note: You can set intervals of less than a day, by typing the value manually."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:196
+msgid "%s news sources"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:311
+msgid "Need username and password"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:312
+msgid "You must provide a username and/or password to use this news source."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:346
+msgid "Account"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:347
+msgid "(optional)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:348
+msgid "(required)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:365
+msgid "Created by: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:372
+msgid "Last downloaded: never"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:373
+msgid "never"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:379
+msgid "%d days, %d hours and %d minutes ago"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:393
+msgid "Last downloaded:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:421
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197
+msgid "Schedule news download"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:424
+msgid "Add a custom news source"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:429
+msgid "Download all scheduled new sources"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:534
+msgid "No internet connection"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:535
+msgid "Cannot download news as no internet connection is active"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:198
+msgid "&Search:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:199
+msgid "blurb"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:200
+msgid "&Schedule for download:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:201
+msgid "Days of week"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:202
+msgid "Days of month"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:203
+msgid "Every x days"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204
+msgid "&Account"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:208
+msgid "For the scheduling to work, you must leave calibre running."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:209
+msgid "&Schedule"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:210
+msgid "Add &title as tag"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:211
+msgid "&Extra tags:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212
+msgid ""
+"Maximum number of copies (issues) of this recipe to keep. Set to 0 to keep "
+"all (disable)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213
+msgid "&Keep at most:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214
+msgid ""
+" When set, this option will cause calibre to keep, at most, the specified "
+"number of issues of this periodical. Every time a new issue is downloaded, "
+"the oldest one is deleted, if the total is larger than this number.\n"
+" Note that this feature only works if you have the option to add the title "
+"as tag checked, above.\n"
+" Also, the setting for deleting periodicals older than a number of days, "
+"below, takes priority over this setting."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217
+msgid "all issues"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218
+msgid " issues"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219
+msgid "&Advanced"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:220
+msgid "&Download now"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:221
+msgid "&Delete downloaded news older than:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:222
+msgid ""
+" Delete downloaded news older than the specified number of days. Set to "
+"zero to disable.\n"
+" You can also control the maximum number of issues of a specific "
+"periodical that are kept by clicking the Advanced tab for that periodical "
+"above."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:224
+msgid "never delete"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:273
+msgid " days"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:226
+msgid "Download all scheduled news sources at once"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:227
+msgid "Download &all scheduled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:41
+msgid "contains"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:42
+msgid "The text to search for. It is interpreted as a regular expression."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:43
+msgid ""
+" Negate this match. That is, only return results that do not match "
+"this query."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:44
+msgid "Negate"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:176
+msgid "Advanced Search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:199
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:177
+msgid "&What kind of match to use:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:200
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:178
+msgid "Contains: the word or phrase matches anywhere in the metadata field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:179
+msgid "Equals: the word or phrase must match the entire metadata field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:180
+msgid ""
+"Regular expression: the expression must match anywhere in the metadata field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:181
+msgid "Find entries that have..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:204
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:182
+msgid "&All these words:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:205
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:183
+msgid "This exact &phrase:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:184
+msgid "&One or more of these words:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:185
+msgid "But dont show entries that have..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:186
+msgid "Any of these &unwanted words:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:209
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:187
+msgid ""
+"See the User Manual for more help"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:188
+msgid "A&dvanced Search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:212
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:190
+msgid "Enter the title."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:191
+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:908
+msgid "Ta&gs:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:216
+msgid "Enter an author's name. Only one author can be used."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:217
+msgid ""
+"Enter a series name, without an index. Only one series name can be used."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:218
+msgid "Enter tags separated by spaces"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:193
+msgid "&Clear"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:220
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:194
+msgid "Search only in specific fields:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:221
+msgid "Titl&e/Author/Series ..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/select_formats.py:45
+msgid "Choose formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
+msgid "Authors"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:136
+msgid "Publishers"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:143
+msgid " (not on any book)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:146
+msgid "Category lookup name: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:222
+msgid "Invalid name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:192
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:223
+msgid ""
+"That name contains leading or trailing periods, multiple periods in a row or "
+"spaces before or after periods."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:200
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions.py:152
+msgid "Name already used"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:231
+msgid "That name is already used, perhaps with different case."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:244
+msgid ""
+"The current tag category will be permanently deleted. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:166
+msgid "User Categories Editor"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:167
+msgid "Category name: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:168
+msgid "Select a category to edit"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:169
+msgid "Delete this selected tag category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:171
+msgid "Enter a category name, then use the add button or the rename button"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:172
+msgid "Add a new category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:174
+msgid "Rename the current category to the what is in the box"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:176
+msgid "Category filter: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:177
+msgid "Select the content kind of the new category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:178
+msgid "A&vailable items"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:179
+msgid "Apply tags to current tag category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:181
+msgid "A&pplied items"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:182
+msgid "Unapply (remove) tag from current tag category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:111
+msgid "Are your sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor.py:71
+msgid ""
+"The following tags are used by one or more books. Are you certain you want "
+"to delete them?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128
+msgid "Tag Editor"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:129
+msgid "A&vailable tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:130
+msgid ""
+"Delete tag from database. This will unapply the tag from all books and then "
+"remove it from the database."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:132
+msgid "Apply tag to current book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:134
+msgid "A&pplied tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:135
+msgid "Unapply (remove) tag from current book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:137
+msgid "&Add tag:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:138
+msgid ""
+"If the tag you want is not in the available list, you can add it here. "
+"Accepts a comma separated list of tags."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:139
+msgid "Add tag to available tags and apply it to current book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:21
+msgid "%s (was %s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+msgid "Item is blank"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:86
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1386
+msgid "An item cannot be set to nothing. Delete it instead."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:99
+msgid "No item selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:100
+msgid "You must select one item from the list of Available items."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:107
+msgid "No items selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:108
+msgid "You must select at least one items from the list."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:112
+msgid "Are you certain you want to delete the following items?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:77
+msgid "Category Editor"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:78
+msgid "Items in use"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:79
+msgid ""
+"Delete item from database. This will unapply the item from all books and "
+"then remove it from the database."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:81
+msgid "Rename the item in every book where it is used."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor_ui.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar_ui.py:106
+msgid "Ctrl+S"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog_ui.py:71
+msgid "Function &name:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions_ui.py:100
+msgid "&Documentation:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog_ui.py:73
+msgid "Python &code:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:56
+msgid "Test email settings"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:57
+msgid "Send test mail from %s to:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134
+msgid "&Test"
+msgstr ""
+
+#: /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.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
+msgid ""
+" Explode the ePub to display contents in a file browser window. To tweak "
+"individual files, right-click, then 'Open with...' your editor of choice. "
+"When tweaks are complete, close the file browser window and the editor "
+"windows you used to edit files in the epub. Rebuild the ePub, "
+"updating your calibre library. Could not create recipe. Error: Create a basic news "
+"recipe, by adding RSS feeds to it. Set a regular expression pattern to use when trying to guess ebook "
+"metadata from filenames. A tutorial on using regular "
+"expressions is available. Use the Test functionality below to test your regular expression "
+"on a few sample filenames (remember to include the file extension). The "
+"group names for the various metadata entries are documented in "
+"tooltips. Search the list of books by title, author, publisher, tags, comments, "
+"etc. To see the full log, click Show "
+"Details."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:538
+msgid "Current cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:541
+msgid "Searching..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:687
+msgid "Downloading covers for %s, please wait..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:717
+msgid "Failed to download any covers, click \"Show details\" for details."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:723
+msgid "Could not find any covers for %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:725
+msgid "Found %d covers of %s. Pick the one you like best."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:813
+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 "
+"the default settings."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/__init__.py:328
+msgid "Configure "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:28
+msgid "Ignore duplicate incoming formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:29
+msgid "Overwrite existing duplicate formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:30
+msgid "Create new record for each duplicate format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:65
+msgid ""
+"Here you can control how calibre will read metadata from the files you add "
+"to it. calibre can either read metadata from the contents of the file, or "
+"from the filename."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:66
+msgid "Read &metadata from &file contents rather than file name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:67
+msgid ""
+"Swap the firstname and lastname of the author. This affects only metadata "
+"read from file names."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:68
+msgid "&Swap author firstname and lastname"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:69
+msgid ""
+"Automerge: If books with similar titles and authors found, merge the "
+"incoming formats automatically into\n"
+"existing book records. The box to the right controls what happens when an "
+"existing record already has\n"
+"the incoming format. Note that this option also affects the Copy to library "
+"action.\n"
+"\n"
+"Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), "
+"punctuation, case, etc. Author match is exact."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:74
+msgid "&Automerge added books if they already exist in the calibre library:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:75
+msgid ""
+"Automerge: If books with similar titles and authors found, merge the "
+"incoming formats automatically into\n"
+"existing book records. This box controls what happens when an existing "
+"record already has\n"
+"the incoming format: \n"
+"\n"
+"Ignore duplicate incoming files - means that existing files in your calibre "
+"library will not be replaced\n"
+"Overwrite existing duplicate files - means that existing files in your "
+"calibre library will be replaced\n"
+"Create new record for each duplicate file - means that a new book entry will "
+"be created for each duplicate file\n"
+"\n"
+"Title matching ignores leading indefinite articles (\"the\", \"a\", \"an\"), "
+"punctuation, case, etc.\n"
+"Author matching is exact."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:85
+msgid "&Tags to apply when adding a book:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:86
+msgid ""
+"A comma-separated list of tags that will be applied to books added to the "
+"library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:87
+msgid "&Configure metadata from file name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:160
+msgid "Low"
+msgstr ""
+
+#: /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:36
+msgid "Very low"
+msgstr ""
+
+#: /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: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:147
+msgid "Show notification when &new version is available"
+msgstr ""
+
+#: /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:150
+msgid "Yes/No columns have three values (Requires restart)"
+msgstr ""
+
+#: /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: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:153
+msgid "Preferred &output format:"
+msgstr ""
+
+#: /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: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:156
+msgid " seconds"
+msgstr ""
+
+#: /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:161
+msgid "Restriction to apply when the current library is opened:"
+msgstr ""
+
+#: /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:163
+msgid "Edit metadata (single) layout:"
+msgstr ""
+
+#: /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:165
+msgid "Preferred &input format order:"
+msgstr ""
+
+#: /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:169
+msgid "Reset all disabled &confirmation dialogs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:96
+msgid "You must select a column to delete it"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:101
+msgid "The selected column is not a custom column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:103
+msgid "Do you really want to delete column %s and all its data?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:82
+msgid ""
+"Here you can re-arrange the layout of the columns in the calibre library "
+"book list. You can hide columns by unchecking them. You can also create your "
+"own, custom columns."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:88
+msgid "Move column up"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:84
+msgid "Remove a user-defined column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:86
+msgid "Add a user-defined column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:88
+msgid "Edit settings of a user-defined column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:96
+msgid "Move column down"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:91
+msgid "Add &custom column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion.py:41
+msgid ""
+"Restore settings to default values. Only settings for the currently selected "
+"section are restored."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:18
+msgid "Text, column shown in the tag browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:21
+msgid "Comma separated text, like tags, shown in the tag browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:24
+msgid "Long text, like comments, not shown in the tag browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:27
+msgid "Text column for keeping series-like information"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:30
+msgid "Text, but with a fixed set of permitted values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:34
+msgid "Floating point numbers"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:36
+msgid "Integers"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:38
+msgid "Ratings, shown with stars"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:41
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149
+msgid "Yes/No"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:43
+msgid "Column built from other columns"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:45
+msgid "Column built from other columns, behaves like tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:52
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:53
+msgid "Create a custom column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64
+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
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:124
+msgid "Formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:68
+msgid "People's names"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
+msgid "Number"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
+msgid "Text"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:89
+msgid "Edit a custom column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:93
+msgid "No column selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:94
+msgid "No column has been selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:98
+msgid "Selected column is not a user-defined column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150
+msgid "My Tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:151
+msgid "My Series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:152
+msgid "My Rating"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:153
+msgid "People"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:181
+msgid "No lookup name was provided"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:185
+msgid ""
+"The lookup name must contain only lower case letters, digits and "
+"underscores, and start with a letter"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:188
+msgid ""
+"Lookup names cannot end with _index, because these names are reserved for "
+"the index of a series column."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:198
+msgid "No column heading was provided"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:208
+msgid "The lookup name %s is already used"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:220
+msgid "The heading %s is already used"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:231
+msgid "You must enter a template for composite columns"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:240
+msgid "You must enter at least one value for enumeration columns"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:244
+msgid "You cannot provide the empty value, as it is included by default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:248
+msgid "The value \"{0}\" is in the list more than once"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:190
+msgid "&Lookup name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:191
+msgid "Column &heading"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:192
+msgid ""
+"Used for searching the column. Must contain only digits and lower case "
+"letters."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:193
+msgid ""
+"Column heading in the library view and category name in the tag browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:194
+msgid "&Column type"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:195
+msgid "What kind of information will be kept in the column."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:196
+msgid ""
+"Show check marks in the GUI. Values of 'yes', 'checked', and 'true'\n"
+"will show a green check. Values of 'no', 'unchecked', and 'false' will show "
+"a red X.\n"
+"Everything else will show nothing."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:199
+msgid "Show checkmarks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:200
+msgid ""
+"Check this box if this column contains names, like the authors column."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:201
+msgid "Contains names"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:202
+msgid ""
+" Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's "
+"for year. For example:\n"
+" 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 "
+"tend to be more like genres, while the larger tag sets tend to describe the "
+"books content.\n"
+" Note that this option will only make a practical difference if one of the "
+"metadata sources has a genre like tag set for the book you are searching "
+"for. Most often, they all have large tag sets."
+msgstr ""
+
+#: /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:56
+msgid "Failed to install command line tools."
+msgstr ""
+
+#: /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:60
+msgid "Command line tools installed in"
+msgstr ""
+
+#: /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:62
+msgid "Max. simultaneous conversion/news download jobs:"
+msgstr ""
+
+#: /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:64
+msgid "Debug &device detection"
+msgstr ""
+
+#: /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:67
+msgid "&Install command line tools"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
+msgid "Open Editor"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
+msgid "Device currently connected: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
+msgid "Device currently connected: None"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
+msgid "The {0} device does not support the {1} format."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
+msgid "Invalid destination"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
+msgid "The destination field cannot be blank"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:114
+msgid ""
+"Here you can change the metadata calibre uses to update a book when saving "
+"to disk or sending to device.\n"
+"\n"
+"Use this dialog to define a 'plugboard' for a format (or all formats) and a "
+"device (or all devices). The plugboard specifies what template is connected "
+"to what field. The template is used to compute a value, and that value is "
+"assigned to the connected field.\n"
+"\n"
+"Often templates will contain simple references to composite columns, but "
+"this is not necessary. You can use any template in a source box that you can "
+"use elsewhere in calibre.\n"
+"\n"
+"One possible use for a plugboard is to alter the title to contain series "
+"information. Another would be to change the author sort, something that mobi "
+"users might do to force it to use the ';' that the kindle requires. A third "
+"would be to specify the language."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:121
+msgid "Format (choose first)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:122
+msgid "Device (choose second)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:123
+msgid "Add new plugboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:124
+msgid "Edit existing plugboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:125
+msgid "Existing plugboards"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:126
+msgid "Source template"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:127
+msgid "Destination field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:128
+msgid "Save plugboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:129
+msgid "Delete plugboard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
+msgid "%(plugin_type)s %(plugins)s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
+msgid "plugins"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
+msgid ""
+"\n"
+"Customization: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
+msgid "Search for plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
+msgid "No matches"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
+msgid "Could not find any matching plugins"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
+msgid "Add plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
+msgid ""
+"Installing plugins is a security risk. Plugins can contain a "
+"virus/malware. Only install it if you got it from a trusted source. Are you "
+"sure you want to proceed?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
+msgid ""
+"Plugin {0} successfully installed under {1} plugins. You may "
+"have to restart calibre for the plugin to take effect."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
+msgid "No valid plugin path"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
+msgid "%s is not a valid plugin path"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
+msgid "Select an actual plugin under %s to customize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
+msgid "Plugin cannot be disabled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
+msgid "The plugin: %s cannot be disabled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
+msgid "Plugin not customizable"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
+msgid "Plugin: %s does not need customization"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
+msgid "Must restart"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
+msgid ""
+"You must restart calibre before you can configure the %s plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
+msgid "Plugin {0} successfully removed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
+msgid "Cannot remove builtin plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
+msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:87
+msgid ""
+"Here you can customize the behavior of Calibre by controlling what plugins "
+"it uses."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:90
+msgid "Enable/&Disable plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:91
+msgid "&Customize plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:92
+msgid "&Remove plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:93
+msgid "&Add a new plugin"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:33
+msgid "Any custom field"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:34
+msgid "The lookup name of any custom field. These names begin with \"#\")"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:57
+msgid "Constant template"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:58
+msgid ""
+"The template contains no {fields}, so all books will have the same name. Is "
+"this OK?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template_ui.py:47
+msgid "Save &template"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template_ui.py:48
+msgid ""
+"By adjusting the template below, you can control what folders the files are "
+"saved in and what filenames they are given. You can use the / character to "
+"indicate sub-folders. Available metadata variables are described below. If a "
+"particular book does not have some metadata, the variable will be replaced "
+"by the empty string."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template_ui.py:49
+msgid "Available variables:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:68
+msgid ""
+"Here you can control how calibre will save your books when you click the "
+"Save to Disk button:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:69
+msgid "Save &cover separately"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:70
+msgid "Replace space with &underscores"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:71
+msgid "Update &metadata in saved copies"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:72
+msgid "Change paths to &lowercase"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending_ui.py:76
+msgid "Format &dates as:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:74
+msgid "File &formats to save:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:75
+msgid "Convert non-English characters to &English equivalents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/saving_ui.py:76
+msgid "Save metadata in &OPF file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:33
+msgid ""
+"Grouped search terms are search names that permit a query to "
+"automatically search across more than one column. For example, if you create "
+"a grouped search term Enter the name of "
+"the grouped search term in the drop-down box, enter the list of columns to "
+"search in the value box, then push the Save button. Note: Search terms "
+"are forced to lower case; You can have your grouped search term show up as user "
+"categories in the Tag Browser. Just add the grouped search term names to "
+"the Make user categories from box. You can add multiple terms separated by "
+"commas. The new user category will be automatically populated with all the "
+"items in the categories included in the grouped search term. Automatic "
+"user categories permit you to see easily all the category items that are in "
+"the columns contained in the grouped search term. Using the above "
+" Remember to leave calibre running as the server only runs as long as "
+"calibre is running.\n"
+" Stanza should see your calibre collection automatically. If not, try "
+"adding the URL http://myhostname:8080 as a new catalog in the Stanza reader "
+"on your iPhone. Here myhostname should be the fully qualified hostname or "
+"the IP address of the computer calibre is running on."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/template_functions.py:23
+msgid ""
+"\n"
+" Here you can add and remove functions used in template "
+"processing. A\n"
+" template function is written in python. It takes information from "
+"the\n"
+" book, processes it in some way, then returns a string result. "
+"Functions\n"
+" defined here are usable in templates in the same way that builtin\n"
+" functions are usable. The function must be named evaluate, "
+"and\n"
+" must have the signature shown below. The parameters of the evaluate function are:\n"
+" \n"
+" The following example function checks the value of the field. If "
+"the\n"
+" field is not empty, the field's value is returned, otherwise the "
+"value\n"
+" EMPTY is returned.\n"
+" ADE, in turn will download the actual ebook, which "
+"will be a .epub file. You can add this book to calibre using \"Add Books\" "
+"and selecting the file from the ADE library folder."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/web_control.py:86
+msgid "File is not a supported ebook type. Save to disk?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:59
+msgid "Home"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:60
+msgid "Reload"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:61
+msgid "%p%"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:375
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:404
+msgid "Rename %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:349
+msgid "Edit sort for %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:356
+msgid "Add %s to user category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:369
+msgid "Children of %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:379
+msgid "Delete search %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:384
+msgid "Remove %s from category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:391
+msgid "Search for %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:396
+msgid "Search for everything but %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:408
+msgid "Add sub-category to %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:412
+msgid "Delete user category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:417
+msgid "Hide category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:421
+msgid "Show category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:431
+msgid "Search for books in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:437
+msgid "Search for books not in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:446
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:451
+msgid "Manage %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:454
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1844
+msgid "Manage Saved Searches"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:462
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:466
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1842
+msgid "Manage User Categories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:473
+msgid "Show all categories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:476
+msgid "Change sub-categorization scheme"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:792
+msgid "The grouped search term name is \"{0}\""
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1065
+msgid ""
+"Changing the authors for several books can take a while. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1070
+msgid ""
+"Changing the metadata for that many books can take a while. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1157
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:417
+msgid "Searches"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1391
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1411
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1420
+msgid "Rename user category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1392
+msgid "You cannot use periods in the name when renaming user categories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1412
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1421
+msgid "The name %s is already used"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1444
+msgid "Duplicate search name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1445
+msgid "The saved search name %s is already used."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1834
+msgid "Manage Authors"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1836
+msgid "Manage Series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1838
+msgid "Manage Publishers"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1840
+msgid "Manage Tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1852
+msgid "Invalid search restriction"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1853
+msgid "The current search restriction is invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1869
+msgid "New Category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1920
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1923
+msgid "Delete user category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1921
+msgid "%s is not a user category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1924
+msgid "%s contains items. Do you really want to delete it?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1945
+msgid "Remove category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1946
+msgid "User category %s does not exist"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1965
+msgid "Add to user category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1966
+msgid "A user category %s does not exist"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2089
+msgid "Find item in tag browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2092
+msgid ""
+"Search for items. This is a \"contains\" search; items containing the\n"
+"text anywhere in the name will be found. You can limit the search\n"
+"to particular categories using syntax similar to search. For example,\n"
+"tags:foo will find foo in any tag, but not in authors etc. Entering\n"
+"*foo will filter all categories at once, showing only those items\n"
+"containing the text \"foo\""
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2101
+msgid "ALT+f"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2106
+msgid "Find the first/next matching item"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2111
+msgid "Collapse all categories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2135
+msgid "No More Matches. Click Find again to go to first match"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2148
+msgid "Sort by name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2148
+msgid "Sort by popularity"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2149
+msgid "Sort by average rating"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2152
+msgid "Set the sort order for entries in the Tag Browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2159
+msgid "Match all"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2159
+msgid "Match any"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2164
+msgid ""
+"When selecting multiple entries in the Tag Browser match any or all of them"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2171
+msgid "Manage authors, tags, etc"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2172
+msgid ""
+"All of these category_managers are available by right-clicking on items in "
+"the tag browser above"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:65
+msgid "Convert book %(num)d of %(total)d (%(title)s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:205
+msgid "Could not convert some books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:206
+msgid ""
+"Could not convert %d of %d books, because no suitable source format was "
+"found."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:125
+msgid "Queueing books for bulk conversion"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:183
+msgid "Queueing "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:184
+msgid "Convert book %d of %d (%s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:254
+msgid "Fetch news from "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:327
+msgid "Convert existing"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:328
+msgid ""
+"The following books have already been converted to %s format. Do you wish to "
+"reconvert them?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:196
+msgid "&Donate to support calibre"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:232
+msgid "&Restore"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:237
+msgid "&Eject connected device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:345
+msgid "Debug mode"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:346
+msgid ""
+"You have started calibre in debug mode. After you quit calibre, the debug "
+"log will be available in the file: %s The log will be displayed "
+"automatically."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:548
+msgid "Conversion Error"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
+msgid "Recipe Disabled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:587
+msgid "Failed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:621
+msgid "There are active jobs. Are you sure you want to quit?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:624
+msgid ""
+" is communicating with the device! A CSS stylesheet that can be used to control the look and feel of books. "
+"For examples, click here."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:207
+msgid "User &Stylesheet"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/dictionary.py:53
+msgid "No results found for:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:40
+msgid "Options to customize the ebook viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
+msgid "Remember last used window size"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:96
+msgid ""
+"Set the user CSS stylesheet. This can be used to customize the look of all "
+"books."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:51
+msgid "Maximum width of the viewer window, in pixels."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:53
+msgid "Resize images larger than the viewer window to fit inside it"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:54
+msgid "Hyphenate text"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:56
+msgid "Default language for hyphenation rules"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:58
+msgid "Save the current position in the document, when quitting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:60
+msgid "Have the mouse wheel turn pages"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:62
+msgid ""
+"The time, in seconds, for the page flip animation. Default is half a second."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:65
+msgid "Font options"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:67
+msgid "The serif font family"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:69
+msgid "The sans-serif font family"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:71
+msgid "The monospaced font family"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:72
+msgid "The standard font size in px"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:73
+msgid "The monospaced font size in px"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:74
+msgid "The standard font type"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:125
+msgid "Still editing"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:126
+msgid ""
+"You are in the middle of editing a keyboard shortcut first complete that, by "
+"clicking outside the shortcut editing box."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+msgid "&Lookup in dictionary"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:538
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
+msgid "Go to..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
+msgid "Next Section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:551
+msgid "Previous Section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
+msgid "Document Start"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:554
+msgid "Document End"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
+msgid "Section Start"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:557
+msgid "Section End"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:12
+msgid "Scroll to the next page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:15
+msgid "Scroll to the previous page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:18
+msgid "Scroll to the next section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:21
+msgid "Scroll to the previous section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:24
+msgid "Scroll to the bottom of the section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:27
+msgid "Scroll to the top of the section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:30
+msgid "Scroll to the end of the document"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:33
+msgid "Scroll to the start of the document"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:36
+msgid "Scroll down"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:39
+msgid "Scroll up"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:42
+msgid "Scroll left"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/keys.py:45
+msgid "Scroll right"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:118
+msgid "Book format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:198
+msgid "Position in book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:205
+msgid "Go to a reference. To get reference numbers, use the reference mode."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:213
+msgid "Search for text in book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:292
+msgid "Print Preview"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:303
+msgid "Clear list of recently opened books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:361
+msgid "Connecting to dict.org to lookup: %s…"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:467
+msgid "Choose ebook"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
+msgid "Ebooks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:504
+msgid "No matches found for: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:541
+msgid "Loading flow..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:579
+msgid "Laying out %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:610
+msgid "Bookmark #%d"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:614
+msgid "Add bookmark"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:615
+msgid "Enter title for bookmark:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:625
+msgid "Manage Bookmarks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:665
+msgid "Loading ebook..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:677
+msgid "Could not open ebook"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:770
+msgid "Options to control the ebook viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:777
+msgid ""
+"If specified, viewer window will try to come to the front when started."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:780
+msgid ""
+"If specified, viewer window will try to open full screen when started."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:785
+msgid "Print javascript alert and console messages to the console"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
+msgid ""
+"%prog [options] file\n"
+"\n"
+"View an ebook.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:189
+msgid "E-book Viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:190
+msgid "Close dictionary"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:192
+msgid "toolBar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:195
+msgid "Next page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:196
+msgid "Previous page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:197
+msgid "Font size larger"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:198
+msgid "Font size smaller"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:202
+msgid "Find next"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:203
+msgid "Find next occurrence"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:207
+msgid "Reference Mode"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:208
+msgid "Bookmark"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:209
+msgid "Toggle full screen"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:210
+msgid "Print"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:211
+msgid "Find previous"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:212
+msgid "Find previous occurrence"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/printing.py:114
+msgid "Print eBook"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
+msgid "Drag to resize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:997
+msgid "Show"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1004
+msgid "Hide"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1041
+msgid "Toggle"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
+msgid ""
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
+msgid "Moving library..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:515
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:516
+msgid "Failed to move library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:570
+msgid "Invalid database"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:571
+msgid ""
+" An invalid library already exists at %s, delete it before trying to move "
+"the existing library. calibre can automatically send books by email to your Kindle. To do that "
+"you have to setup email delivery below. The easiest way is to setup a free "
+"gmail account and click the Use gmail "
+"button below. You will also have to register your gmail address in your "
+"Amazon account."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:50
+msgid "&Kindle email:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:57
+msgid "Choose your &language:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:58
+msgid ""
+" Choose a location for your books. When you add books to calibre, they "
+"will be copied here. Use an empty folder for a new calibre library:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:59
+msgid "&Change"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:60
+msgid ""
+"If you have an existing calibre library, it will be copied to the new "
+"location. If a calibre library already exists at the new location, calibre "
+"will switch to using it."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:34
+msgid "Using: %s:%s@%s:%s and %s encryption"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:39
+msgid "Sending..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:44
+msgid "Mail successfully sent"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:96
+msgid "OK to proceed?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:97
+msgid ""
+"This will display your email password on the screen. Is it OK to proceed?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:140
+msgid ""
+"If you are setting up a new hotmail account, you must log in to it once "
+"before you will be able to send mails."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:151
+msgid "Setup sending email using"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:153
+msgid ""
+"If you don't have an account, you can sign up for a free {name} email "
+"account at http://{url}. {extra}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
+msgid "Your %s &email address:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
+msgid "Your %s &username:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:162
+msgid "Your %s &password:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:180
+msgid ""
+"If you plan to use email to send books to your Kindle, remember to add the "
+"your %s email address to the allowed email addresses in your Amazon.com "
+"Kindle management page."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:187
+msgid "Setup"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:218
+msgid "Bad configuration"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:203
+msgid "You must set the From email address"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:214
+msgid ""
+"You must either set both the username and password for the mail "
+"server or no username and no password at all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:219
+msgid "Please enter a username and password or set encryption to None "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:224
+msgid ""
+"No username and password set for mailserver. Most mailservers need a "
+"username and password. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:124
+msgid "Send email &from:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:125
+msgid ""
+" This is what will be present in the From: field of emails sent by "
+"calibre. A mail server is useful if the service you are sending mail to only "
+"accepts email from well know mail services."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:127
+msgid "Mail &Server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:128
+msgid "calibre can optionally use a server to send mail"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:129
+msgid "&Hostname:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:130
+msgid "The hostname of your mail server. For e.g. smtp.gmail.com"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:131
+msgid "&Port:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:132
+msgid ""
+"The port your mail server listens for connections on. The default is 25"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:134
+msgid "Your username on the mail server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:136
+msgid "Your password on the mail server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:137
+msgid "&Show"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:138
+msgid "&Encryption:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:139
+msgid ""
+"Use TLS encryption when connecting to the mail server. This is the most "
+"common."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:140
+msgid "&TLS"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:141
+msgid "Use SSL encryption when connecting to the mail server."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:142
+msgid "&SSL"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:143
+msgid "WARNING: Using no encryption is highly insecure"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:144
+msgid "&None"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:145
+msgid "Use Gmail"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:146
+msgid "Use Hotmail"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:147
+msgid "&Test email"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:49
+msgid ""
+" If you use the Stanza e-"
+"book app on your iPhone/iTouch, you can access your calibre book collection "
+"directly on the device. To do this you have to turn on the calibre content "
+"server."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:50
+msgid "Turn on the &content server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
+msgid "checked"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
+msgid "yes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
+msgid "unchecked"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
+msgid "no"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
+msgid "today"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:359
+msgid "yesterday"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:362
+msgid "thismonth"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:366
+msgid "daysago"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:563
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:580
+msgid "blank"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:563
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:580
+msgid "empty"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+msgid "Invalid boolean query \"{0}\""
+msgstr ""
+
+#: /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"
+"Available fields: %s,\n"
+"plus user-created custom fields.\n"
+"Example: %s=title,authors,tags\n"
+"Default: '%%default'\n"
+"Applies to: CSV, XML output formats"
+msgstr ""
+
+#: /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_sort\n"
+"Default: '%default'\n"
+"Applies to: CSV, XML output formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
+msgid ""
+"The fields to output when cataloging books in the database. Should be a "
+"comma-separated list of fields.\n"
+"Available fields: %s.\n"
+"plus user-created custom fields.\n"
+"Example: %s=title,authors,tags\n"
+"Default: '%%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
+msgid ""
+"Output field to sort on.\n"
+"Available fields: author_sort, id, rating, size, timestamp, title.\n"
+"Default: '%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
+msgid ""
+"Create a citation for BibTeX entries.\n"
+"Boolean value: True, False\n"
+"Default: '%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
+msgid ""
+"Create a file entry if formats is selected for BibTeX entries.\n"
+"Boolean value: True, False\n"
+"Default: '%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
+msgid ""
+"The template for citation creation from database fields.\n"
+"Should be a template with {} enclosed fields.\n"
+"Available fields: %s.\n"
+"Default: '%%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
+msgid ""
+"BibTeX file encoding output.\n"
+"Available types: utf8, cp1252, ascii.\n"
+"Default: '%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
+msgid ""
+"BibTeX file encoding flag.\n"
+"Available types: strict, replace, ignore, backslashreplace.\n"
+"Default: '%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
+msgid ""
+"Entry type for BibTeX catalog.\n"
+"Available types: book, misc, mixed.\n"
+"Default: '%default'\n"
+"Applies to: BIBTEX output format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+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:623
+msgid ""
+"Save the output from different stages of the conversion pipeline to the "
+"specified directory. Useful if you are unsure at which stage of the "
+"conversion process a bug is occurring.\n"
+"Default: '%default'\n"
+"Applies to: ePub, MOBI output formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+msgid ""
+"field:pattern specifying custom field/contents indicating book should be "
+"excluded.\n"
+"Default: '%default'\n"
+"Applies to ePub, MOBI output formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
+msgid ""
+"Regex describing tags to exclude as genres.\n"
+"Default: '%default' excludes bracketed tags, e.g. '[ Migrating old database to ebook library in %s Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7902,14 +8003,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Baliorik ez duen txantiloia"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "%s txantiloiak ez du balio:"
@@ -8345,13 +8446,13 @@ msgid "Where do you want to delete from?"
msgstr "Nondik ezabatu nahi duzu?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Liburutegia"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Gailua"
@@ -8381,7 +8482,7 @@ msgstr "Kokalekua"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8418,57 +8519,99 @@ msgstr "Egile izenaren araberako sailkapena"
msgid "No matches found"
msgstr "Ez da bat datorrenik aurkitu"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Letra larriak/xeheak giltza aldatu"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Letra larriak"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Letra xeheak"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Trukatu leta xehe/larri"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Izenburuaren letra mota (xehe/larri)"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Kapitalizatu"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Baliogarria ez den egile izena"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Egile izenek ezin dute & karakterea eduki."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Erabili egileen izenak"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Bilatu hau:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "B&ilatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Egileen izenen arabera sailkatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Egileen sailkapenen arabera sailkatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Kalkulatu berriro egile guzien sailakapenen balioak"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -8492,34 +8635,34 @@ msgstr "Erakutsi lana &zehaztasunak"
msgid "Stop &all non device jobs"
msgstr "Stop, gelditu, &lan guztiak (irakurgailutik kanpokoak)"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Kopiaturik"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Kopiatu arbelean"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8534,7 +8677,7 @@ msgid "Standard metadata"
msgstr "Metadatu estandarrak"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Metadatu pertsonalizatuak"
@@ -8547,26 +8690,6 @@ msgstr "Bilatu/Ordeztu"
msgid "Working"
msgstr "Lanean"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Letra xeheak"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Letra larriak"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Izenburuaren letra mota (xehe/larri)"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Kapitalizatu"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Karaktereek bat egin"
@@ -8778,7 +8901,7 @@ msgstr "Gehitu eti&ketak: "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Zabaldu etiketen editorea"
@@ -8842,7 +8965,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Data:"
@@ -8923,13 +9046,13 @@ msgid "Set from &ebook file(s)"
msgstr "Ezarri &e-liburu(eta)ko fitxategi(eta)tik"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "&Oinarrizko metadatuak"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "&Pertsonalizaturiko metadatuak"
@@ -9613,7 +9736,7 @@ msgid "Choose formats"
msgstr "Hautatu formatuak"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Egileak"
@@ -10159,7 +10282,7 @@ msgid "Attached, you will find the e-book"
msgstr "Erantsita, liburu elektronikoa topatuko duzu"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "egilea:"
@@ -10415,49 +10538,49 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Irakurgailua deskonektatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Erakutsi liburuak calibre liburutegian"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Erakutsi liburuak irakurgailuaren memoria nagusian"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "A txartela"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Erakutsi liburuak A memoria-txartelean"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "B txartela"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Erakutsi liburuak B memoria-txartelean"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "erabilgarria"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Maius+Ctrl+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Bilaketa aurreratua"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7120,14 +7221,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7539,13 +7640,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7573,7 +7674,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7610,57 +7711,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7684,34 +7827,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7726,7 +7869,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7739,26 +7882,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7938,7 +8061,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7990,7 +8113,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8064,13 +8187,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8722,7 +8845,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9234,7 +9357,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9486,74 +9609,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7215,14 +7316,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7634,13 +7735,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7668,7 +7769,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7705,57 +7806,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7779,34 +7922,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7821,7 +7964,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7834,26 +7977,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -8033,7 +8156,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -8085,7 +8208,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8159,13 +8282,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8817,7 +8940,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9329,7 +9452,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9581,74 +9704,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7099,14 +7200,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /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: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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr ""
@@ -7518,13 +7619,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:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /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:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr ""
@@ -7552,7 +7653,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -7589,57 +7690,99 @@ msgstr ""
msgid "No matches found"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /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/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
"generated can be controlled via Preferences->Advanced->Tweaks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr ""
@@ -7663,34 +7806,34 @@ msgstr ""
msgid "Stop &all non device jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -7705,7 +7848,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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr ""
@@ -7718,26 +7861,6 @@ msgstr ""
msgid "Working"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr ""
@@ -7917,7 +8040,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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr ""
@@ -7969,7 +8092,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/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr ""
@@ -8043,13 +8166,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/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr ""
@@ -8701,7 +8824,7 @@ msgid "Choose formats"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr ""
@@ -9213,7 +9336,7 @@ msgid "Attached, you will find the e-book"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr ""
@@ -9465,74 +9588,70 @@ msgstr ""
msgid "Do you really want to stop all non-device jobs?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc. Cannot upload books to device there is no more free space available "
msgstr ""
@@ -8061,14 +8194,14 @@ msgstr ""
#: /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/plugboard.py:293
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:61
msgid "Invalid template"
msgstr "Modèle incorrect"
#: /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/plugboard.py:294
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:62
msgid "The template %s is invalid:"
msgstr "Le modèle %s est incorrect :"
@@ -8598,13 +8731,13 @@ msgid "Where do you want to delete from?"
msgstr "A partir d'où voulez vous supprimer?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228
msgid "Library"
msgstr "Bibliothèque"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:78
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
msgid "Device"
msgstr "Appareil"
@@ -8634,7 +8767,7 @@ msgstr "Emplacement"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:979
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:32
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321
@@ -8678,40 +8811,82 @@ msgstr "Clé de tri par auteur"
msgid "No matches found"
msgstr "Aucun résultat"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
+msgid "Change Case"
+msgstr "Modifier la casse"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
+msgid "Upper Case"
+msgstr "Majuscule"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
+msgid "Lower Case"
+msgstr "Minuscule"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:123
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
+msgid "Swap Case"
+msgstr "Basculer la casse"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
+msgid "Title Case"
+msgstr "Casse du titre"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:125
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
+msgid "Capitalize"
+msgstr "Mettre en majuscules"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:141
+msgid "Copy to author sort"
+msgstr "Copier vers le tri par auteur"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:144
+msgid "Copy to author"
+msgstr "Copier vers auteur"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:271
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Invalid author name"
msgstr "Nom de l'auteur erroné"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:272
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "Author names cannot contain & characters."
msgstr "Les noms d'auteurs ne peuvent pas contenir le caractère &"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:115
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120
msgid "Manage authors"
msgstr "Gérer les auteurs"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597
msgid "&Search for:"
msgstr "&Rechercher :"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:90
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105
msgid "F&ind"
msgstr "C&hercher"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:91
msgid "Sort by author"
msgstr "Trier par auteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:92
msgid "Sort by author sort"
msgstr "Trier par clé de tri par auteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:93
msgid ""
"Reset all the author sort values to a value automatically\n"
"generated from the author. Exactly how this value is automatically\n"
@@ -8721,11 +8896,11 @@ msgstr ""
"générée depuis cet auteur. Le paramètre exact de ce tri automa-\n"
"tique peut être géré dans Préférences > Avancé > Tweaks"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:96
msgid "Recalculate all author sort values"
msgstr "Recalculer toutes les valeurs de clés de tri par auteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:97
msgid ""
"Copy author sort to author for every author. You typically use this button\n"
"after changing Preferences->Advanced->Tweaks->Author sort name algorithm"
@@ -8734,7 +8909,7 @@ msgstr ""
"après\n"
"avoir changé Préférences->Avancé->Tweaks->Algorithme de tri par auteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:99
msgid "Copy all author sort values to author"
msgstr "Copier toutes les valeurs de tri d'auteur dans auteur"
@@ -8758,34 +8933,34 @@ msgstr "Afficher les &détails du travail"
msgid "Stop &all non device jobs"
msgstr "&Arrêter tous les travaux ne concernant pas les appareils"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
msgid "&Copy to clipboard"
msgstr "&Copier dans le presse-papier"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
msgid "Show &details"
msgstr "Afficher &détails"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:54
msgid "Hide &details"
msgstr "Cacher détails"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:58
msgid "Show detailed information about this error"
msgstr "Afficher l'information détaillée à propos de cette erreur"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:98
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:525
msgid "Copied"
msgstr "Copié"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:135
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:770
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
msgid "Copy to clipboard"
msgstr "Copie vers le presse-papier"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box.py:179
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:831
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:922
msgid "View log"
@@ -8800,7 +8975,7 @@ msgid "Standard metadata"
msgstr "Métadonnée standard"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:810
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:852
msgid "Custom metadata"
msgstr "Métadonnée personnalisée"
@@ -8813,26 +8988,6 @@ msgstr "Rechercher/Remplacer"
msgid "Working"
msgstr "En cours"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
-msgid "Lower Case"
-msgstr "Minuscule"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420
-msgid "Upper Case"
-msgstr "Majuscule"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423
-msgid "Title Case"
-msgstr "Casse du titre"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424
-msgid "Capitalize"
-msgstr "Mettre en majuscules"
-
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:266
msgid "Character match"
msgstr "Correspondance de caractère"
@@ -9050,7 +9205,7 @@ msgstr "Ajouter des &étiquettes : "
#: /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/metadata/single.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166
msgid "Open Tag Editor"
msgstr "Ouvre l'éditeur de mots-clefs"
@@ -9115,7 +9270,7 @@ msgid "&Force numbers to start with:"
msgstr "&Forcer les nombres à commencer avec:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1094
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1101
msgid "&Date:"
msgstr "&Date :"
@@ -9199,13 +9354,13 @@ msgid "Set from &ebook file(s)"
msgstr "Fixer à partir du(des) fichier(s) &ebook(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:470
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:623
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659
msgid "&Basic metadata"
msgstr "Metadonnées de &base"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:477
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:502
msgid "&Custom metadata"
msgstr "Metadonnées &personnalisées"
@@ -9927,7 +10082,7 @@ msgid "Choose formats"
msgstr "Choisir les formats"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:146
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:102
msgid "Authors"
msgstr "Auteurs"
@@ -10482,7 +10637,7 @@ msgid "Attached, you will find the e-book"
msgstr "En pièce jointe, vous trouverez l'ebook"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:189
msgid "by"
msgstr "par"
@@ -10752,49 +10907,49 @@ msgstr ""
"Voulez-vous réellement arrêter tous les travaux qui ne sont pas liés à "
"l'appareil connecté?"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57
msgid "Eject this device"
msgstr "Ejecter cet appareil"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
msgid "Show books in calibre library"
msgstr "Afficher les livres dans la bibliothèque calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
msgid "Show books in the main memory of the device"
msgstr "Afficher les livres dans mémoire principale de l'appareil"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1019
msgid "Card A"
msgstr "Carte A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:73
msgid "Show books in storage card A"
msgstr "Afficher les livres dans la carte mémoire A"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1021
msgid "Card B"
msgstr "Carte B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:75
msgid "Show books in storage card B"
msgstr "Afficher les livres dans la carte mémoire B"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:140
msgid "available"
msgstr "disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:181
msgid "Shift+Ctrl+F"
msgstr "Maj+Ctrl+F"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:184
msgid "Advanced search"
msgstr "Recherche avancée"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:189
msgid ""
" Search the list of books by title, author, publisher, tags, comments, "
"etc.
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9560,31 +9679,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10040,15 +10159,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10115,7 +10234,7 @@ msgstr ""
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.py:51
#: /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
@@ -10123,26 +10242,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10150,88 +10269,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11154,27 +11284,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11294,33 +11424,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11380,96 +11545,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12114,6 +12279,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12193,7 +12368,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12262,7 +12437,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12290,18 +12465,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12356,40 +12531,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13277,14 +13447,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13303,8 +13465,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13624,7 +13786,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13639,7 +13801,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13688,12 +13850,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13704,7 +13866,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13712,7 +13874,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13720,7 +13882,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13728,7 +13890,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13737,7 +13899,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13745,7 +13907,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13753,7 +13915,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13761,14 +13923,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13777,7 +13939,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13785,14 +13947,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9657,31 +9776,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10137,15 +10256,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10212,7 +10331,7 @@ msgstr ""
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.py:51
#: /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
@@ -10220,26 +10339,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10247,88 +10366,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "حذف سلسلات غير مستخدمة (سلسلات التي لا تحتوي على كتب)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11251,27 +11381,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11391,33 +11521,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11477,96 +11642,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "مسار الملحق غير صالح"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s ليس مسار لملحق صالح"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "لا يمكن تعطيل الملحق"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "الملحق: %s لا يمكن تعطيله"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "لا يمكن تخصيص الملحق"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "الملحق: %s لا يحتاج التخصيص"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "لم يمكن حذف الملحق المضمن"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr " لا يمكن حذفه. هذا ملحق مضمن في البرنامج. حاول تعطيله بدلاً من حذفه."
@@ -12211,6 +12376,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "بحث"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12290,7 +12465,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12359,7 +12534,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12387,18 +12562,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12453,40 +12628,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13334,14 +13504,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13360,8 +13522,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13681,7 +13843,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13696,7 +13858,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13745,12 +13907,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13761,7 +13923,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13769,7 +13931,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13777,7 +13939,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13785,7 +13947,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13794,7 +13956,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13802,7 +13964,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13810,7 +13972,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13818,14 +13980,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13834,7 +13996,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13842,14 +14004,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9560,31 +9679,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10040,15 +10159,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10115,7 +10234,7 @@ msgstr ""
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.py:51
#: /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
@@ -10123,26 +10242,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10150,88 +10269,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11154,27 +11284,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11294,33 +11424,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11380,96 +11545,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12114,6 +12279,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12193,7 +12368,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12262,7 +12437,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12290,18 +12465,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12356,40 +12531,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13277,14 +13447,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13303,8 +13465,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13624,7 +13786,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13639,7 +13801,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13688,12 +13850,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13704,7 +13866,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13712,7 +13874,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13720,7 +13882,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13728,7 +13890,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13737,7 +13899,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13745,7 +13907,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13753,7 +13915,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13761,14 +13923,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13777,7 +13939,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13785,14 +13947,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Изчистване на бързото търсене"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9588,31 +9707,31 @@ msgstr "Размер (MB)"
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10068,15 +10187,15 @@ msgstr "Това ISBN номер е валиден"
msgid "This ISBN number is invalid"
msgstr "Това ISBN номер е невалиден"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10143,7 +10262,7 @@ msgstr ""
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.py:51
#: /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
@@ -10151,26 +10270,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10178,88 +10297,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Достъпът е отказан"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Коментари"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11182,27 +11312,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11322,33 +11452,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11408,96 +11573,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12146,6 +12311,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Търсене"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12225,7 +12400,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12294,7 +12469,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12322,18 +12497,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12388,40 +12563,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13309,14 +13479,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13335,8 +13497,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13656,7 +13818,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13671,7 +13833,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13720,12 +13882,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13736,7 +13898,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13744,7 +13906,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13752,7 +13914,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13760,7 +13922,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13769,7 +13931,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13777,7 +13939,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13785,7 +13947,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13793,14 +13955,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13809,7 +13971,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13817,14 +13979,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9555,31 +9674,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10035,15 +10154,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10110,7 +10229,7 @@ msgstr ""
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.py:51
#: /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
@@ -10118,26 +10237,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10145,88 +10264,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11149,27 +11279,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11289,33 +11419,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11375,96 +11540,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12109,6 +12274,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12188,7 +12363,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12257,7 +12432,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12285,18 +12460,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12351,40 +12526,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13272,14 +13442,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13298,8 +13460,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13619,7 +13781,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13634,7 +13796,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13683,12 +13845,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13699,7 +13861,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13707,7 +13869,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13715,7 +13877,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13723,7 +13885,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13732,7 +13894,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13740,7 +13902,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13748,7 +13910,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13756,14 +13918,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13772,7 +13934,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13780,14 +13942,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9555,31 +9674,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10035,15 +10154,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10110,7 +10229,7 @@ msgstr ""
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.py:51
#: /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
@@ -10118,26 +10237,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10145,88 +10264,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11149,27 +11279,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11289,33 +11419,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11375,96 +11540,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12109,6 +12274,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12188,7 +12363,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12257,7 +12432,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12285,18 +12460,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12351,40 +12526,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13272,14 +13442,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13298,8 +13460,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13619,7 +13781,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13634,7 +13796,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13683,12 +13845,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13699,7 +13861,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13707,7 +13869,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13715,7 +13877,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13723,7 +13885,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13732,7 +13894,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13740,7 +13902,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13748,7 +13910,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13756,14 +13918,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13772,7 +13934,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13780,14 +13942,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
@@ -10734,26 +10871,22 @@ msgstr ""
"comentaris...
Es cerquen totes les paraules que es posen separades "
"per espais"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "Enda&vant!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Cerca ràpida (també podeu prémer la tecla de retorn)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Reinicia la cerca ràpida"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Copia el text de cerca (en lloc del nom de la cerca)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr "Donacions"
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "S"
@@ -10776,31 +10909,31 @@ msgstr "Grandària (MB)"
msgid "Modified"
msgstr "Modificat"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "El nom de la cerca és «{0}»"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "L'UUID del llibre és «{0}»"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "A la biblioteca"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Mida"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "S'ha marcat per suprimir"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Feu doble clic per a edittar>/b>
-me"
@@ -11302,15 +11435,15 @@ msgstr "El nombre d'ISBN és vàlid"
msgid "This ISBN number is invalid"
msgstr "El nombre d'ISBN no és vàlid"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr "&Editorial:"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr "Suprimeix la data"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Pu&blicació:"
@@ -11383,7 +11516,7 @@ msgstr "S'ha baixat %d de %d"
msgid "Downloaded metadata fields"
msgstr "Camps de metadades descarregats"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:51
#: /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
@@ -11391,19 +11524,19 @@ msgstr "Camps de metadades descarregats"
msgid "Next"
msgstr "Següent"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Anterior"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr "Edita les metadades"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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 "
@@ -11414,7 +11547,7 @@ msgstr ""
"En fer servir aquest botó per crear l'ordre per títol canviarà l'ordre per "
"títol de vermell a verd."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -11426,88 +11559,103 @@ msgstr ""
"canviarà l'ordre per autor de vermell a verd. Hi ha un menú de funcions "
"disponible a sota d'aquest botó. Feu clic al botó i manteniu per veure'l."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr "Estableix l'ordre per autor a partir de l'autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr "Estableix l'autor a partir de l'ordre per autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Intercanvia l'autor i el títol"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+"Gestiona els autors. S'utilitza per reanomena autors i corregir els valors "
+"individuals d'ordre per autor"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "Suprimeix les sèries que no es fan servir (sèries sense llibres)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+"Enganxa els continguts del porta-retalls al quadre d'identificadors amb el "
+"prefix «isbn:»"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr "&Baixa les metadades"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr "Configura la baixada de metadades"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr "Canvia com el calibre baixa les metadades"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "No s'ha pogut llegir la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "No s'ha pogut llegir la portada del format %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "La portada del format %s no és vàlida"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "S'ha denegat el permís"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr "No s'ha pogut obrir %s. L'està fent servir un altre programa?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Desa els canvis i edita les metadades de %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr "Canvia la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr "Co&mentaris"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr "&Metadades"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr "&Portada i formats"
-#: /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 "Configura la baixada de metadades"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr "Metadades &personalitzades"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Comentaris"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr "Metadades bàsiques"
@@ -12575,27 +12723,27 @@ msgstr "Font"
msgid "Cover priority"
msgstr "Prioritat de la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr "Aquesta font està configurada i preparada per funcionar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr "Cal configurar aquesta font"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr "Data de publicació"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr "Configura %s
%s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr "No s'ha seleccionat cap font"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr "No s'ha seleccionat cap font, no es pot configurar"
@@ -12734,35 +12882,76 @@ msgstr "Obre la carpeta de &configuració del calibre"
msgid "&Install command line tools"
msgstr "&Instal·la les eines de la línia de comandaments"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr "Obre l'editor"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Dispositiu que està connectat: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Dispositiu que està connectat: cap"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
-msgstr ""
-"Aquest dispositiu i format ja té un quadre de connexions o té un conflicte "
-"amb un altre quadre de connexions."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
+msgstr "Aquest format i dispositiu ja té un quadre de connexions."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr "Potser s'hauria de substituir el quadre de connexions?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+"Ja hi ha un quadre de connexions més general per a aquest format i "
+"dispositiu. Segur que voleu afegir un quadre de connexions nou?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr "S'ha d'afegir el quadre de connexions possiblement substituït?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+"Hi ha quadres de connexions més específics per a aquest format. Voleu afegir "
+"un quadre de connexions nou?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr "S'ha d'afegir el quadre de connexions?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+"Un altre quadre de connexions coincideix amb aquesta combinació de format i "
+"dispositiu. Segur que voleu afegir un quadre de connexions nou?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+"Ja hi ha quadres de connexions de format i dispositiu més específics. Segur "
+"que voleu afegir un quadre de connexions nou?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr "El dispositiu {0} no és compatible amb el format {1}."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "El destí no és vàlid."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "El camp de destí no pot estar en blanc"
@@ -12840,15 +13029,15 @@ msgstr "Desa el quadre de connexions"
msgid "Delete plugboard"
msgstr "Suprimeix el quadre de connexions"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugin_type)s %(plugins)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "connectors"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12856,24 +13045,24 @@ msgstr ""
"\n"
"Personalització: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
msgid "Search for plugin"
msgstr "Cerca un connector"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr "Cap coincidència"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr "No s'ha trobat cap connector que coincideixi"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr "Afegeix un connector"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
@@ -12883,7 +13072,7 @@ msgstr ""
"connectors poden contenir virus o programari maliciós. Instal·leu-los només "
"si els heu aconseguit d'una font de confiança. Voleu continuar?"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
@@ -12891,53 +13080,53 @@ msgstr ""
"S'ha instal·lat el connector {0} sota connectors {1} amb "
"èxit. Potser caldrà reiniciar el calibre per activar el connector."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "No hi ha una ruta de connectors vàlida"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s no és una ruta de connectors vàlida"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr "Seleccioneu un connector existent per personalitzar-lo a %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "No es pot inhabilitar el connector"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "El connector %s no es pot inhabilitar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "El connector no es pot personalitzar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "El connector %s no necessita personalització"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Cal reiniciar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
"S'ha de reiniciar el calibre abans si voleu configurar el connector %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr "S'ha suprimit el connector {0} correctament"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "No es pot suprimir un complement integrat"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" no es pot suprimir. És un connector integrat. Intenteu inhabilitar-lo."
@@ -13758,6 +13947,16 @@ msgstr "Restaura els valors per &defecte"
msgid "Apply any changes you made to this tweak"
msgstr "Aplica els canvis que s'ha fet a l'ajustament"
+#: /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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Cerca"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr "Suprimeix la cerca actual"
@@ -13843,7 +14042,7 @@ msgstr "({0} de tots)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13912,7 +14111,7 @@ msgstr "Etiquetes afegides:"
msgid "Open store in external web browswer"
msgstr "Obre la botiga en un navegador web extern"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr "No disponible"
@@ -13940,18 +14139,18 @@ msgstr "S'ha processat %s de %s llibres."
msgid "Updating MobileRead book cache..."
msgstr "S'està actualitzant la memòria cau de llibres MobileRead..."
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr "&Consulta:"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
msgstr "Llibres:"
-#: /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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -14020,40 +14219,35 @@ msgstr ""
"No s'ha pogut determinar si el llibre té restriccions DRM. És molt probable "
"que en realitat aquest llibre en tingui."
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr "No s'ha trobat cap llibre que coincideixi amb la consulta"
-#: /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:118
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:107
msgid "Get Books"
msgstr "Get Books"
-#: /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:119
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
msgid "Query:"
msgstr "Consulta:"
-#: /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 "Botigues"
-
-#: /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:111
msgid "All"
msgstr "Tot"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
msgid "Invert"
msgstr "Inverteix"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
msgid "Open a selected book in the system's web browser"
msgstr "Obre el llibre seleccionat al navegador web del sistema"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr "Obre en una navegador &extern"
@@ -15007,14 +15201,6 @@ msgstr "Troba la coincidència anterior"
msgid "Print eBook"
msgstr "Imprimeix el llibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Canvia la caixa"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Intercanvia la caixa"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Arrossega per canviar la mida"
@@ -15033,10 +15219,10 @@ msgstr "Commuta"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
-"Trieu el vostre lector. Si el dispositiu no és a la llista, trieu un "
+"Trieu el vostre lector. Si el dispositiu no és a la llista escolliu un "
"dispositiu «%s»."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -15409,7 +15595,7 @@ msgstr "activat"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "sí"
@@ -15424,7 +15610,7 @@ msgstr "desactivat"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "no"
@@ -15480,16 +15666,16 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Camps de sortida pels quals s'ordenarà.\n"
-"Els camps disponibles són: author_sort, id, rating, size, timestamp, title.\n"
+"Camp de sortida pel qual s'ordena.\n"
+"Camps disponibles: author_sort, id, rating, size, timestamp, title_sort\n"
"Per defecte: «%default»\n"
"S'aplica als formats de sortida CSV, XML"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -15507,7 +15693,7 @@ msgstr ""
"Per defecte: «%%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -15519,7 +15705,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15531,7 +15717,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15544,7 +15730,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -15559,7 +15745,7 @@ msgstr ""
"Per defecte: «%%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -15571,7 +15757,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -15583,7 +15769,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -15595,7 +15781,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica al format de sortida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -15605,7 +15791,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica als formats de sortida ePub i MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -15619,7 +15805,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica als formats de sortida ePub, MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -15631,7 +15817,7 @@ msgstr ""
"Per defecte: «%default»\n"
"S'aplica als formats de sortida ePuB i MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:204
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:754
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:776
msgid " is not a valid picture"
msgstr ""
@@ -5728,14 +5698,14 @@ 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/metadata/basic_widgets.py:909
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:931
msgid "Tags categorize the book. This is particularly useful while searching.
They can be any words or phrases, separated by commas."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:544
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:355
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:377
msgid "&Series:"
msgstr ""
@@ -5743,7 +5713,7 @@ 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/metadata/basic_widgets.py:354
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:376
msgid "List of known series. You can add new series."
msgstr ""
@@ -5845,14 +5815,16 @@ msgid "PDB Output"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:48
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:195
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:205
msgid "&Format:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:47
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:34
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
msgid "&Inline TOC"
msgstr ""
@@ -5931,8 +5903,9 @@ msgid "Occurrences:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:94
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:143
msgid "0"
msgstr ""
@@ -6003,7 +5976,7 @@ msgstr ""
#:
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:154
-msgid "
A tag value can be a regular expression. Check the box to turn them on. When using regular expressions, note that the wizard puts anchors (^ and $) around the expression, so you must ensure your expression matches from the beginning to the end of the tag.
Regular expression examples:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:82
+msgid ".* matches any tag. No empty tags are checked, so you don't need to worry about empty stringsA.* matches any tag beginning with A.*mystery.* matches any tag containing the word \"mystery\"
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:388
msgid "Y"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:396
-msgid "Edit template"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:251
msgid "On Device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
msgid "Size (MB)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:766
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1323
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:772
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1325
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1026
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1303
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1306
msgid "Double click to edit me
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:158
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:159
msgid "Hide column %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
msgid "Sort on %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165
msgid "Ascending"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:167
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:168
msgid "Descending"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:180
msgid "Change text alignment for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:182
msgid "Left"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:182
msgid "Right"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:183
msgid "Center"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:202
msgid "Show column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:214
msgid "Restore default layout"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:855
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:858
msgid "Dropping onto a device is not supported. First add the book to the calibre library."
msgstr ""
@@ -9255,188 +9350,200 @@ msgstr ""
msgid "Unhandled exception"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
+msgid "Permission denied"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
+msgid "Could not open %s. Is it being used by another program?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:132
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:134
msgid "Title &sort:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:142
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:145
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:192
msgid "Authors changed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:193
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:274
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:279
msgid "Author s&ort:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:289
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:292
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:433
msgid "&Number:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:492
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:514
msgid ""
"Last modified: %s\n"
"\n"
"Double click to view"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:509
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:531
msgid "Set the cover for the book from the selected format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:539
msgid "Set metadata for the book from the selected format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:524
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:546
msgid "Add a format to this book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:553
msgid "Remove the selected format from this book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:619
msgid "Choose formats for "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:651
msgid "No permission"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:630
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:652
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:682
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:683
msgid "No format selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
msgid "Could not read metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:673
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:695
msgid "Could not read metadata from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:692
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:714
msgid "&Browse"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:716
msgid "T&rim"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:696
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:718
msgid "&Remove"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:702
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:724
msgid "Download co&ver"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:703
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:725
msgid "&Generate cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:753
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:775
msgid "Not a valid picture"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:777
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:799
msgid "Specify title and author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:778
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:800
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:818
msgid "Invalid cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:797
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:819
msgid "Could not change cover as the image is invalid."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:824
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:846
msgid "This book has no cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:826
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:848
msgid "Cover size: %dx%d pixels"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:875
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:897
msgid "stars"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:944
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:966
msgid "Tags changed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:945
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:967
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:993
msgid "I&ds:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:972
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:994
msgid ""
"Edit the identifiers for this book. For example: \n"
"\n"
"%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1033
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1055
msgid "This ISBN number is valid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1036
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1058
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1072
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1142
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1174
msgid "Publishe&d:"
msgstr ""
@@ -9576,14 +9683,6 @@ msgstr ""
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
-msgid "Permission denied"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
-msgid "Could not open %s. Is it being used by another program?"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
@@ -9960,7 +10059,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:156
msgid "Yes/No"
msgstr ""
@@ -9992,8 +10091,9 @@ 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/create_custom_column.py:155
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:124
msgid "Formats"
msgstr ""
@@ -10035,107 +10135,127 @@ msgid "Selected column is not a user-defined column"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:157
msgid "My Tags"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:158
msgid "My Series"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:159
msgid "My Rating"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:160
msgid "People"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:181
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:187
+msgid "Examples: The format {0:0>4d} gives a 4-digit number with leading zeros. The format {0:d} days prints the number then the word \"days\""
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:192
+msgid "Examples: The format {0:.1f} gives a floating point number with 1 digit after the decimal point. The format Price: $ {0:,.2f} prints \"Price $ \" then displays the number with 2 digits after the decimal point and thousands separated by commas."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:201
msgid "No lookup name was provided"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:205
msgid "The lookup name must contain only lower case letters, digits and underscores, and start with a letter"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:208
msgid "Lookup names cannot end with _index, because these names are reserved for the index of a series column."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:218
msgid "No column heading was provided"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:228
msgid "The lookup name %s is already used"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:220
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:240
msgid "The heading %s is already used"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:251
msgid "You must enter a template for composite columns"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:260
msgid "You must enter at least one value for enumeration columns"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:264
msgid "You cannot provide the empty value, as it is included by default"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:268
msgid "The value \"{0}\" is in the list more than once"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:276
+msgid "The colors box must be empty or contain the same number of items as the value box"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:281
+msgid "The color {0} is unknown"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:217
msgid "&Lookup name"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:218
msgid "Column &heading"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:192
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:219
msgid "Used for searching the column. Must contain only digits and lower case letters."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:193
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:220
msgid "Column heading in the library view and category name in the tag browser"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:194
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:221
msgid "&Column type"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:195
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:222
msgid "What kind of information will be kept in the column."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:196
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223
msgid ""
"Show check marks in the GUI. Values of 'yes', 'checked', and 'true'\n"
"will show a green check. Values of 'no', 'unchecked', and 'false' will show a red X.\n"
@@ -10143,22 +10263,22 @@ msgid ""
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:199
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:226
msgid "Show checkmarks"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:200
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:227
msgid "Check this box if this column contains names, like the authors column."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:228
msgid "Contains names"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:229
msgid ""
"{0:\n"
+"and end with } You can have text before and after the format specifier.\n"
+" "
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:240
+msgid "{#column:switch(foo,blue,bar,red,black)}To show the title in blue if the book has the exact tag \"Science Fiction\", red if the book has the exact tag \"Mystery\", or black if the book has neither tag, useprogram: \n"
+" t = field('tags'); \n"
+" first_non_empty(\n"
+" in_list(t, ',', '^Science Fiction$', 'blue', ''), \n"
+" in_list(t, ',', '^Mystery$', 'red', 'black'))To show the title in green if it has one format, blue if it two formats, and red if more, useprogram:cmp(count(field('formats'),','), 2, 'green', 'blue', 'red')"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:197
+msgid "You can access a multi-line template editor from the context menu (right-click)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:199
+msgid "Note: if you want to color a \"custom column with a fixed set of values\", it is often easier to specify the colors in the column definition dialog. There you can provide a color for each value without using a template."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:298
msgid "User Interface &layout (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:199
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:299
msgid "Choose &language (requires restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:200
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:300
msgid "Enable system &tray icon (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:301
msgid "Disable all animations. Useful if you have a slow/old computer."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:302
msgid "Disable &animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:303
msgid "Disable ¬ifications in system tray"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:204
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:304
msgid "Show &splash screen at startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:205
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:305
msgid "&Toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:306
msgid "&Icon size:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:307
msgid "Show &text under icons:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:308
msgid "Interface font:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:209
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:309
msgid "Change &font (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:310
msgid "Main Interface"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:311
msgid "Select displayed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:212
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:312
msgid "Move up"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:313
msgid "Move down"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:314
msgid "Use &Roman numerals for series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:215
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:315
msgid "Note that comments will always be displayed at the end, regardless of the position you assign here."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:317
msgid "Tags browser category &partitioning method:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:218
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:318
msgid ""
"Choose how tag browser subcategories are displayed when\n"
"there are more items than the limit. Select by first\n"
@@ -10464,25 +10639,25 @@ msgid ""
"if you never want subcategories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:323
msgid "&Collapse when more items than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:224
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:324
msgid ""
"If a Tag Browser category has more than this number of items, it is divided\n"
"up into sub-categories. If the partition method is set to disable, this value is ignored."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:326
msgid "Show &average ratings in the tags browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:327
msgid "Categories with &hierarchical items:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:328
msgid ""
"A comma-separated list of columns in which items containing\n"
"periods are displayed in the tag browser trees. For example, if\n"
@@ -10492,14 +10667,38 @@ msgid ""
"then the tags will be displayed each on their own line."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:235
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:335
msgid "Show cover &browser in a separate window (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:336
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:338
+msgid "Column to color"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:339
+msgid "Color selection template"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:341
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:342
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:343
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:344
+msgid "Open the tags wizard."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:345
+msgid "Color names"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:346
+msgid "Column Coloring"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:230
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks_ui.py:96
msgid "&Apply"
@@ -10694,31 +10893,56 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
-msgid "Open Editor"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:52
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:55
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid "That format and device already has a plugboard or conflicts with another plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:187
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:199
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:200
+msgid "A more general plugboard already exists for that format and device. Are you sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:212
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:234
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:213
+msgid "More specific device plugboards exist for that format. Are you sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:224
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:225
+msgid "A different plugboard matches that format and device combination. Are you sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:235
+msgid "More specific format and device plugboards already exist. Are you sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:246
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:279
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
msgid "The destination field cannot be blank"
msgstr ""
@@ -10788,7 +11012,7 @@ msgid "Search for plugin"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:321
msgid "No matches"
msgstr ""
@@ -11429,8 +11653,9 @@ 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:116
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:134
#: /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
@@ -11513,7 +11738,8 @@ 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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:138
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -11584,10 +11810,242 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:219
+msgid "&Name:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:221
+msgid "&Description:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:222
+msgid "&Headquarters:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:226
+msgid "Enabled:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:227
+msgid "DRM:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:233
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:207
+msgid "true"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:229
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:234
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:208
+msgid "false"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:206
+msgid "Affiliate:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/adv_search_builder_ui.py:235
+msgid "Nam&e/Description ..."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:132
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
+msgid "Query:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:81
+msgid "Enable"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:111
+msgid "All"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
+msgid "Invert"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21
+msgid "Affiliate"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21
+msgid "Enabled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21
+msgid "Headquarters"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21
+msgid "No DRM"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:129
+msgid "This store is currently diabled and cannot be used in other parts of calibre."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:131
+msgid "This store is currently enabled and can be used in other parts of calibre."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:136
+msgid "This store only distributes ebooks with DRM."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:138
+msgid "This store distributes ebooks with DRM. It may have some titles without DRM, but you will need to check on a per title basis."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:140
+msgid "This store is headquartered in %s. This is a good indication of what market the store caters to. However, this does not necessarily mean that the store is limited to that market only."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:203
+msgid "Buying from this store supports the calibre developer: %s."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:145
+msgid "This store distributes ebooks in the following formats: %s"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/results_view.py:47
+msgid "Configure..."
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:99
+msgid "Time"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:100
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:100
+msgid "Number of seconds to wait for a store to respond"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:101
+msgid "Number of seconds to let a store process results"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:102
+msgid "Display"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:103
+msgid "Maximum number of results to show per store"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:104
+msgid "Open search result in system browser"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:105
+msgid "Threads"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:106
+msgid "Number of search threads to use"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:107
+msgid "Number of cache update threads to use"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:108
+msgid "Number of conver download threads to use"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search/search_widget_ui.py:109
+msgid "Number of details threads to use"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:105
+msgid "Performance"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:106
+msgid "Number of simultaneous searches"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:107
+msgid "Number of simultaneous cache updates"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:108
+msgid "Number of simultaneous cover downloads"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/config/search_widget_ui.py:109
+msgid "Number of simultaneous details downloads"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:179
+msgid "See the User Manual for more help"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/adv_search_builder_ui.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:209
+msgid "Titl&e/Author/Price ..."
+msgstr ""
+
#:
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/cache_progress_dialog_ui.py:51
msgid "Updating book cache"
@@ -11619,20 +12077,21 @@ msgid "Updating MobileRead book cache..."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:142
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:144
#: /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"
@@ -11644,68 +12103,64 @@ msgid "Search:"
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:192
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:202
msgid "&Price:"
msgstr ""
-#:
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:196
-msgid "Titl&e/Author/Price ..."
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:36
+msgid ""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:33
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:36
msgid "DRM"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:33
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:36
msgid "Price"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:191
msgid "Detected price as: %s. Check with the store before making a purchase to verify this price is correct. This price often does not include promotions the store may be running."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:194
msgid "This book as been detected as having DRM restrictions. This book may not work with your reader and you will have limitations placed upon you as to what you can do with this book. Check with the store before making any purchases to ensure you can actually read this book."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:196
msgid "This book has been detected as being DRM Free. You should be able to use this book on any device provided it is in a format calibre supports for conversion. However, before making a purchase double check the DRM status with the store. The store may not be disclosing the use of DRM."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:198
msgid "The DRM status of this book could not be determined. There is a very high likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:105
+msgid "Buying from this store supports the calibre developer: %sDemo videos
Videos demonstrating the various features of calibre
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:51
-msgid "User Manual
A User Manual is also available online."
+msgid "User Manual
A User Manual is also available online."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:49
@@ -12685,65 +13144,73 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:96
-msgid "OK to proceed?"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:97
-msgid "This will display your email password on the screen. Is it OK to proceed?"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:140
-msgid "If you are setting up a new hotmail account, you must log in to it once before you will be able to send mails."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:59
msgid "Setup sending email using"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:61
msgid "If you don't have an account, you can sign up for a free {name} email account at http://{url}. {extra}"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:68
msgid "Your %s &email address:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:69
msgid "Your %s &username:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:162
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:70
msgid "Your %s &password:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:180
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:88
msgid "If you plan to use email to send books to your Kindle, remember to add the your %s email address to the allowed email addresses in your Amazon.com Kindle management page."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
msgid "Setup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:202
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:213
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:218
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:102
+msgid "Incorrect username"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:103
+msgid "%s needs the full email address as your username"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:154
+msgid "OK to proceed?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:155
+msgid "This will display your email password on the screen. Is it OK to proceed?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:199
+msgid "If you are setting up a new hotmail account, Microsoft requires that you verify your account periodically, before it will let calibre send email. In this case, I strongly suggest you setup a free gmail account instead."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:221
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:237
msgid "Bad configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:222
msgid "You must set the From email address"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:233
msgid "You must either set both the username and password for the mail server or no username and no password at all."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:238
msgid "Please enter a username and password or set encryption to None "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:224
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:243
msgid "No username and password set for mailserver. Most mailservers need a username and password. Are you sure?"
msgstr ""
@@ -12844,63 +13311,63 @@ msgid "Turn on the &content server"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:581
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:591
msgid "checked"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:581
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:591
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:216
msgid "yes"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:566
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:578
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:588
msgid "unchecked"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:566
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:578
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:588
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:216
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:359
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:362
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:367
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:366
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:370
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:371
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:563
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:580
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:568
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:585
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:563
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:580
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:568
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:585
msgid "empty"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "Invalid boolean query \"{0}\""
msgstr ""
@@ -13658,19 +14125,19 @@ msgstr ""
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1017
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1022
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:3105
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3110
msgid "
"
msgid "Create a catalog of the books in your calibre library"
msgstr "Vytvořit katalog z knih ve Vaší calibre knihovně"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr "Nebyly vybrány žádné knihy pro vytvoření katalogu"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Generování %s katalogu..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Katalog vygenerován."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Exportovat adresář s katalogy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Označit destinaci pro %s.%s"
@@ -4436,17 +4502,17 @@ msgid "Switch/create library..."
msgstr "Přepnout/vytvořit Knihovnu..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Rychlý přepínač"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Přejmenuj knihovnu"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Odstranit knihovnu"
@@ -4488,7 +4554,7 @@ msgstr "Berte na vědomí, že složka s aktuální knihovnou bude přejmenován
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Už existuje"
@@ -4509,13 +4575,14 @@ msgstr ""
"využívající tato data."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Jste si jisti?"
@@ -4551,8 +4618,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr "Úspěch"
@@ -4688,110 +4755,117 @@ msgid ""
"CALIBRE_OVERRIDE_DATABASE_PATH."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Odstraňování..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Smazáno"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Mazání selhalo"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"Nepodařilo se odstranit některé knihy. Klikněte na tlačítko \"Zobrazit "
"detaily\" pro zjištění podrobností."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Del"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Odstranit knihy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Odstranit vybrané knihy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr "Odstranit soubory se zvoleným formátem z označených knih"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr ""
"Odstranit všechny soubory se zvoleným formátem z označených knih, mimo..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Odstranit obálku u vybraných knih"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Odstranit odpovídající knihy ze zařízení"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "Nelze smazat"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Vyberte formáty, které nechcete smazat"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Vyberte formáty, které chcete smazat"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "Není možné smazat knihy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "Není připojeno žádné zařízení"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Hlavní paměť"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Paměťová karta A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Paměťová karta B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "Žádné knihy ke smazání"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "Žádné knihy z vybraných nejsou na zařízení"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Mažu knihy ze zařízení."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -4799,7 +4873,7 @@ msgstr ""
"Vybrané knihy budou trvale odstraněny a soubory smazány z vaše "
"calibre knihovny. Jste si jisti?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -4928,7 +5002,7 @@ msgstr "Nepodařilo se stáhnout metadata"
#: /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 ""
+msgstr "Stahování selhalo"
#: /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)."
@@ -4952,7 +5026,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
msgid "Download complete"
-msgstr ""
+msgstr "Stahování dokončeno"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:107
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:777
@@ -5030,11 +5104,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5116,24 +5190,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Spustit uvítacího průvodce"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr "Restartuj v ladícím módu"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "Nastavení není možné změnit dokud neproběhne zpracování všech úloh"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "Není možné konfigurovat dokud nebude calibre restartováno."
@@ -5261,35 +5335,52 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Knihy se stejnými tagy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
-msgstr ""
+msgstr "Získat knihy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Hledat"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr "Hledat knihy"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr "Hledat autora"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr "Hledat název"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr "Hledat knihu"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr "Obchody"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr "Nelze hledat"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
"information."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5299,11 +5390,11 @@ msgid ""
"ebook.com/about#drm\">DRM
Words separated by spaces are ANDed"
@@ -10149,26 +10272,22 @@ msgstr ""
"
Slova rozdělená mezerou budou doplněna o AND"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "&Začít!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Provést rychlé hledání (můžete také stisknout klávesu Enter)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Zrušit rychlé vyhledávání"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Zkopírovat právě hledaný text (namísto hledání názvu)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "Y"
@@ -10189,33 +10308,33 @@ msgstr "Velikost (MB)"
#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241
msgid "Modified"
-msgstr ""
+msgstr "Změněno"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "Hledaný název je \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "UUID knihy je \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "V knihovně"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Velikost"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Označeno ke smazání"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Dvakrát klikněte na upravit mě
"
@@ -10683,15 +10802,15 @@ msgstr "Toto ISBN je platné"
msgid "This ISBN number is invalid"
msgstr "Toto ISBN není platné"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr "Vy&davatel:"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Publikováno:"
@@ -10758,7 +10877,7 @@ msgstr ""
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.py:51
#: /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
@@ -10766,26 +10885,26 @@ msgstr ""
msgid "Next"
msgstr "Další"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Předchozí"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr "Upravit metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10793,88 +10912,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Prohodit autora a název"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "Odebrat nepoužité série (Série, které nemají knihy)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "Nepodařilo se načíst obálku"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "Nemohu načíst obal z %s formátu"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "Obal ve %s formátu je neplatný"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Přístup odmítnut"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr "Nelze otevřít %s. Je používán jiným programem?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Uložit změny a změnit metadata %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr "Změnit obálku"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr "&Komentáře"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr "&Metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Komentáře"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11838,27 +11968,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11980,35 +12110,68 @@ msgstr "Otevřít konfigurační adresář calibre"
msgid "&Install command line tools"
msgstr "Instaluj nástroje příkazové řádky"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr "Otevřít editor"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Momentálně připojené zařízení: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Momentálně připojené zařízení: Žádné"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-"Tento formát a zařízení již má plugboard, nebo je v konfliktu s jiným "
-"plugboardem"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Neplatný cíl"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "Cílové pole nemůže být prázdný"
@@ -12068,15 +12231,15 @@ msgstr "Ulož plugboard"
msgid "Delete plugboard"
msgstr "Smaž plugboard"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugin_type)s %(plugins)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "pluginy"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12084,82 +12247,82 @@ msgstr ""
"\n"
"Přizpůsobení: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
msgid "Search for plugin"
msgstr "Hledat plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr "Žádné shody"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr "Přidat plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "Chybí platná cesta k modulům"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s není platná cesta k modulům"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "Modul není možné deaktivovat"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "Modul %s nemůže být deaktivován"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Modul není upravitelný"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "Modul %s nevyžaduje žádné úpravy"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Je třeba restartovat"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr "Plugin {0} úspěšně odstraněn"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "Vestavěný modul není možné odstranit"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" nemůže být odstraněn. Je to vestavěbý modul. Skuste ho místo odstranění "
@@ -12828,6 +12991,16 @@ msgstr "Obnovit &výchozí"
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Hledat"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12907,7 +13080,7 @@ msgstr "({0} ze všech)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12976,7 +13149,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -13004,18 +13177,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -13070,40 +13243,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -14013,14 +14181,6 @@ msgstr "Najít předchozí výskyt"
msgid "Print eBook"
msgstr "Vytisknout eBook"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Změnit velikost písmen"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Zaměnit malá/velká písmena"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Táhněte pro změnu velikosti"
@@ -14039,8 +14199,8 @@ msgstr "Přepínač"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -14392,7 +14552,7 @@ msgstr "zaškrtnuto"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "ano"
@@ -14407,7 +14567,7 @@ msgstr "nezaškrtnuto"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "ne"
@@ -14456,12 +14616,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14472,7 +14632,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14480,7 +14640,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14492,7 +14652,7 @@ msgstr ""
"Výchozí: '%default'\n"
"Používá se na: BIBTEX výstupní formát"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14500,7 +14660,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -14509,7 +14669,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -14521,7 +14681,7 @@ msgstr ""
"Výchozí: '%default'\n"
"Platí pro: výstupní formát BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -14533,7 +14693,7 @@ msgstr ""
"Výchozí: '%default'\n"
"Použije se na: BIBTEX výstupní formát"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -14545,7 +14705,7 @@ msgstr ""
"Výchozí: '%default'\n"
"Platí pro: výstupní formát BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -14555,7 +14715,7 @@ msgstr ""
"Výchozí: '%default'\n"
"Platí pro: výstupní formáty ePub a MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -14564,7 +14724,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -14572,14 +14732,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
"
msgid "Create a catalog of the books in your calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Genererer %s katalog..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Katalog genereret."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Eksport katalog mappe"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Gem destination for %s.%s"
@@ -4367,17 +4433,17 @@ msgid "Switch/create library..."
msgstr "Skift/opret bibliotek..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Hurtig skift"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Omdøb bibliotek"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Slet bibliotek"
@@ -4419,7 +4485,7 @@ msgstr "Bemærk at den aktuelle biblioteksmappe vil blive omdøbt."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Eksisterer allerede"
@@ -4440,13 +4506,14 @@ msgstr ""
"hvis en af filerne i biblioteket er åbnet af et andet program."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Er du sikker?"
@@ -4482,8 +4549,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr ""
@@ -4617,108 +4684,115 @@ msgid ""
"CALIBRE_OVERRIDE_DATABASE_PATH."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Sletter..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Slettet"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Sletning fejlede"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"Sletning fejlede for nogle bøger, klik Vis-detaljer-knappen for detailjer."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Slet"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Fjern bøger"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Fjern valgte bøger"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr "Fjern fil med et specifikt format fra valgte bøger.."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr "Fjern alle formater fra valgte bøger, undtagen..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Fjern omslag fra valgte bøger"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Fjern matchende bøger fra enhed"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "Kan ikke slette"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Vælg formater der skal slettes"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Vælg formater der ikke skal slettes"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "Kan ikke slette bøger"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "Ingen enhed forbundet"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Arbejdshukommelse"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Hukommelsekort A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Hukommelsekort B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "Ingen bøger at slette"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "Ingen af de valgte bøger findes på enheden"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Sletter bøger fra enheden"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -4726,7 +4800,7 @@ msgstr ""
"De valgte bøger vil blive permanent slettet og filerne fjernes fra "
"dit calibre-bibliotek. Er du sikker?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -4959,11 +5033,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5045,24 +5119,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Kør velkommen guide"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "Kan ikke konfigurere mens opgaver kører."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "Kan ikke konfigurere før calibre genstartes."
@@ -5190,35 +5264,52 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Bøger med samme mærker"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Søg"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
"information."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5228,11 +5319,11 @@ msgid ""
"ebook.com/about#drm\">DRM
Words separated by spaces are ANDed"
@@ -10132,26 +10255,22 @@ msgstr ""
"
Ord separeret af mellemrum ANDes"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "&Søg!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Lav hurtigsøgning (du kan også trykke på retur-tasten)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Nulstil hurtigsøgning"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Kopiér aktuelle søgetekst (istedet for søgenavnet)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "Y"
@@ -10174,31 +10293,31 @@ msgstr "Størrelse (MB)"
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "Opslaget/søgenavn er \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "Denne bogs UUID er \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "I bibliotek"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Størrelse"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Markeret til sletning"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Dobbeltklik for at redigere mig
"
@@ -10670,15 +10789,15 @@ msgstr "Dette ISBN-nummer er gyldigt"
msgid "This ISBN number is invalid"
msgstr "Dette ISBN-nummer er ugyldigt"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Ud&givet:"
@@ -10745,7 +10864,7 @@ msgstr ""
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.py:51
#: /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
@@ -10753,26 +10872,26 @@ msgstr ""
msgid "Next"
msgstr "Næste"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Forrige"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10780,88 +10899,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Ombyt forfatter og titel"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "Fjern ubenyttede serier (serier uden bøger)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "Kunne ikke læse omslaget"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "Kunne ikke læse omslaget fra %s-formatet"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "Omslaget i %s-formatet er ugyldigt"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Adgang nægtet"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr "Kunne ikke åbne %s. Bliver den anvendt af et andet program?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Gem ændringer og redigér %s metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Kommentarer"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11830,27 +11960,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11973,35 +12103,68 @@ msgstr "Åben calibre &konfigurationsmappe"
msgid "&Install command line tools"
msgstr "&Installér kommandolinje værktøj"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Enhed der er forbundet: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Enhed der er forbundet: Ingen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-"Dette format og enhed har allerede et plugboard - eller konflikter med et "
-"andet plugboard."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Ugyldig destination"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "Destinationsfeltet kan ikke være tomt"
@@ -12077,15 +12240,15 @@ msgstr "Gem plugboard"
msgid "Delete plugboard"
msgstr "Slet plugboard"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugin_type)s %(plugins)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "udvidelsesmoduler"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12093,82 +12256,82 @@ msgstr ""
"\n"
"Tilpasning: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "Ingen gyldig udvidelsesmodulsti"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s er ikke en gyldig udvidelsesmodulsti"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "Udvidelsesmodul kan ikke deaktiveres"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "Udvidelsesmodulet: %s kan ikke deaktiveres"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Udvidelsesmodul kan ikke tilpasses"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "Udvidelsesmodul: %s behøver ingen til tilpasning"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Skal genstarte"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "Kan ikke fjerne indbyggede udvidelsesmoduler"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" kan ikke fjernes. Det er et indbygget udvidelsesmodul. Prøv at deaktivere "
@@ -12855,6 +13018,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Søg"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12934,7 +13107,7 @@ msgstr "({0} af alle)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13003,7 +13176,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -13031,18 +13204,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -13097,40 +13270,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -14044,14 +14212,6 @@ msgstr "Find forrige forekomst"
msgid "Print eBook"
msgstr "Udskriv e-bog"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Skift versaltype"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Skift store/små bogstaver"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Træk til skaléring"
@@ -14070,8 +14230,8 @@ msgstr "Skift"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -14428,7 +14588,7 @@ msgstr "markeret"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "ja"
@@ -14443,7 +14603,7 @@ msgstr "umarkeret"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "nej"
@@ -14492,16 +14652,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Output-felter til at sortere på.\n"
-"Tilgængelige felter: author_sort, id, rating, size, timestamp, title.\n"
-"Standard: '%default'\n"
-"Anvendes til: CSV, XML output-formater"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14512,7 +14668,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14524,7 +14680,7 @@ msgstr ""
"Standard: '%default'\n"
"Anvendes til: BIBTEX output-format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14536,7 +14692,7 @@ msgstr ""
"Standard: '%default'\n"
"Anvendes til: BIBTEX output-format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14544,7 +14700,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -14553,7 +14709,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -14565,7 +14721,7 @@ msgstr ""
"Standard: '%default'\n"
"Anvendes til: BIBTEX output-format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -14577,7 +14733,7 @@ msgstr ""
"Standard: '%default'\n"
"Anvendes til: BIBTEX output-format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -14589,7 +14745,7 @@ msgstr ""
"Standard: '%default'\n"
"Anvendes til: BIBTEX output-format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -14599,7 +14755,7 @@ msgstr ""
"Standard: '%default'\n"
"Anvendes til: ePub, MOBI output-formater"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -14608,7 +14764,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -14616,7 +14772,7 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
"
msgid "Create a catalog of the books in your calibre library"
msgstr "Erstellt einen Katalog von Büchern in Ihrer Calibre Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr "Keine Bücher zur Erzeugung des Kataloges ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Erstelle %s Katalog..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Katalog erstellt."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Katalog-Verzeichnis exportieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Wählen Sie das Ziel für %s.%s"
@@ -4617,17 +4683,17 @@ msgid "Switch/create library..."
msgstr "Wechsel/Neuerstellung der Bibliothek..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Schneller Wechsel"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Bibliothek umbenennen"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Bibliothek löschen"
@@ -4669,7 +4735,7 @@ msgstr "Achtung: Dies benennt den eigentlichen Bibliotheks- Ordner um."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Gibts hier schon"
@@ -4691,13 +4757,14 @@ msgstr ""
"sind."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Sicher?"
@@ -4735,8 +4802,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr "Erfolgreich"
@@ -4883,103 +4950,110 @@ msgstr ""
"Sie können keine anderen Bibliotheken benutzen, während die "
"Umgebungsvariable CALIBRE_OVERRIDE_DATABASE_PATH gesetzt ist."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Wird gelöscht …"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Gelöscht"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Fehler beim Löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"Fehler beim löschen einiger Bücher, klicken Sie auf den Details-Button für "
"mehr Details."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Entf"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Bücher entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Gewählte Bücher entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr "Dateien des angegebenen Formates der gewählten Bücher entfernen..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr "Alle Formate der gewählten Bücher entfernen, außer..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Umschlagbilder der gewählten Bücher entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Passende Bücher vom Gerät löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "Löschen nicht möglich"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Zu löschende Formate auswählen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Nicht zu löschende Formate auswählen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "Bücher können nicht gelöscht werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "Kein Gerät ist angeschlossen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Hauptspeicher"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Speicherkarte A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Speicherkarte B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "Kein Buch zum Löschen vorhanden"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "Keines der selektierten Bücher ist auf dem Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Lösche Bücher vom Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
@@ -4987,7 +5061,7 @@ msgstr ""
"Einige der ausgewählten Bücher sind auf dem angeschlossenen Gerät vorhanden. "
"Wo wollen Sie die Dateien löschen?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -4995,7 +5069,7 @@ msgstr ""
"Die ausgewählten Bücher werden permanent gelöscht und die Dateien aus "
"der Calibre- Bibliothek entfernt. Sind sie sicher?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -5258,11 +5332,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr "Geänerte Metadaten übernehmen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr "Einige Fehler"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5347,24 +5421,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Willkommens-Assistenten ausführen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr "Neustart im Debug-Modus"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "Konfiguration nicht möglich während Aufträge abgearbeitet werden."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "Konfiguration erst nach einem Neustart von Calibre möglich."
@@ -5496,35 +5570,57 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Bücher mit denselben Etiketten"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
msgstr "Bücher erwerben"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Suche"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr "Nach eBooks suchen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr "Nach diesem Autor suchen"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr "Nach diesem Titel suchen"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr "Nach diesem Buch suchen"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr "Händler"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
msgstr ""
+"Calibre hilft Ihnen bestimmte eBooks zu finden, indem es die Websites vieler "
+"kommerzieller und gemeinfreier Buchquellen für Sie durchsucht."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
"information."
msgstr ""
+"Mit der eingebauten Suchfunktion können Sie einfach herausfinden, welcher "
+"Händler das Buch nach dem Sie suchen am günstigsten anbietet. Außerdem "
+"können Sie sich den DRM-Status und andere nützliche Informationen ansehen."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5533,14 +5629,21 @@ msgid ""
"especially if the book you are buying has DRM."
msgstr ""
+"Alle Transaktionen (bezahlt oder nicht) werden zwischen Ihnen und dem "
+"Händler abgewickelt. Calibre ist kein Teilnehmer dieses Prozesses und alle "
+"Probleme die im Zusammenhang mit einem Kauf entstehen, sollten an die "
+"Website gerichtet werden, von der Sie kaufen. Sie sollten vorher überprüfen, "
+"ob die eBooks mit Ihrem eBook Reader gelesen werden können, besonders wenn "
+"das entsprechende Buch DRM-geschützt ist."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:134
msgid "Show this message again"
-msgstr ""
+msgstr "Diese Nachricht nochmal anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:135
msgid "About Get Books"
-msgstr ""
+msgstr "Über Bücher erwerben"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:15
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60
@@ -5661,7 +5764,7 @@ msgid "The specified directory could not be processed."
msgstr "Das angegebene Verzeichnis konnte nicht bearbeitet werden."
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:843
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845
msgid "No books"
msgstr "Keine Bücher"
@@ -5843,8 +5946,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar_ui.py:110
#: /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:115
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:191
msgid "..."
msgstr "..."
@@ -5868,6 +5971,10 @@ msgstr ""
"&Mehrere Bücher pro Verzeichnis, wobei jede Buch-Datei ein anderes Buch "
"darstellt"
+#: /home/kovid/work/calibre/src/calibre/gui2/bars.py:190
+msgid "Donate"
+msgstr "Spenden"
+
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:108
msgid "Click to open"
msgstr "Zum Öffnen klicken"
@@ -5881,7 +5988,7 @@ msgid "Book %s of %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:144
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:978
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:981
msgid "Collections"
msgstr "Sammlungen"
@@ -5908,7 +6015,7 @@ msgstr "Pfad"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:515
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:109
msgid "Cover size: %dx%d"
-msgstr ""
+msgstr "Umschlag-Größe: %dx%d"
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex.py:16
msgid "BibTeX Options"
@@ -5981,7 +6088,7 @@ msgstr "Ausgabe"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59
#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:91
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:72
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77
@@ -6300,10 +6407,12 @@ msgid "Remove formatting"
msgstr "Formatierung entfernen"
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:134
msgid "Copy"
msgstr "Kopieren"
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:136
msgid "Paste"
msgstr "Einfügen"
@@ -7161,7 +7270,7 @@ msgstr "&Format:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:47
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:34
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
msgid "&Inline TOC"
msgstr "M&itwachsendes Inhaltsverzeichnis"
@@ -7242,7 +7351,7 @@ msgid "Occurrences:"
msgstr "Treffer:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:94
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:64
msgid "0"
msgstr "0"
@@ -7338,7 +7447,7 @@ msgstr "Einstellungen für das Eingabe-Format."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box_ui.py:52
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/cache_progress_dialog_ui.py:50
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:61
msgid "Dialog"
msgstr "Dialog"
@@ -7530,46 +7639,50 @@ msgstr ""
msgid "TXT Output"
msgstr "TXT-Ausgabe"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
msgid "General"
msgstr "Allgemein"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:86
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
msgid "Output &Encoding:"
msgstr "Ausgabe&codierung:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
msgid "&Line ending style:"
msgstr "Stil des Zei&lenendes:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
msgid "&Formatting:"
msgstr "&Formatierung:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
msgid "Plain"
msgstr "Unformatiert"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
msgid "&Maximum line length:"
msgstr "&Maximale Zeilenlänge:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
msgid "Force maximum line length"
msgstr "Erzwinge maximale Zeilenlänge"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:96
msgid "Markdown, Textile"
msgstr "Markdown, Textile"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:97
msgid "Do not remove links ( tags) before processing"
msgstr "Links ( Tags) nicht entfernen vor der Verarbeitung"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:98
msgid "Do not remove image references before processing"
msgstr "Bildreferenzen vor der Verarbeitung nicht entfernen"
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:99
+msgid "Keep text color, when possible"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txtz_output.py:12
msgid "TXTZ Output"
msgstr "TXTZ- Ausgabe"
@@ -7683,10 +7796,10 @@ msgstr "Cover-Browser konnte nicht geladen werden"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:183
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:302
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:566
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:607
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:630
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:681
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:608
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:682
#: /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/library/delegates.py:120
@@ -7694,27 +7807,27 @@ msgstr "Cover-Browser konnte nicht geladen werden"
#: /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:1110
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1117
msgid "Undefined"
msgstr "Undefiniert"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
msgid "star(s)"
msgstr "Stern(e)"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:640
msgid "Unrated"
msgstr "Unbewertet"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:668
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Set '%s' to today"
msgstr "'%s' auf heute einstellen"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:172
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:671
msgid "Clear '%s'"
msgstr "'%s' zurücksetzen"
@@ -7730,23 +7843,23 @@ msgstr ""
"Die Aufzählung \"{0}\" enthält einen ungültigen Wert. Dieser wird auf den "
"Standard Wert gesetzt."
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:521
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:522
msgid "Apply changes"
msgstr "Änderungen übernehmen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:714
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:715
msgid "Remove series"
msgstr "Reihen entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:717
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:718
msgid "Automatically number books"
msgstr "Bücher automatisch nummerieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:721
msgid "Force numbers to start with "
msgstr "Start der Nummerierung erzwingen bei "
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:791
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:792
msgid ""
"The enumeration \"{0}\" contains invalid values that will not appear in the "
"list"
@@ -7754,15 +7867,15 @@ msgstr ""
"Die Aufzählung \"{0}\" enthält einen ungültigen Wert, welcher nicht in der "
"Liste angezeigt werden wird."
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:835
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:836
msgid "Remove all tags"
msgstr "Alle Etiketten entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:855
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:856
msgid "tags to add"
msgstr "Etiketten hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:863
msgid "tags to remove"
msgstr "Etiketten entfernen"
@@ -7846,7 +7959,7 @@ msgstr "Gerät auswerfen"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:611
#: /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/gui2/preferences/plugins.py:313
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
msgid "Error"
msgstr "Fehler"
@@ -7856,7 +7969,7 @@ msgid "Error communicating with device"
msgstr "Fehler bei der Kommunikation mit dem Gerät"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1168
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1170
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:221
msgid "No suitable formats"
msgstr "Keine geeigneten Formate"
@@ -7885,60 +7998,60 @@ msgstr "Gerät: "
msgid " detected."
msgstr " gefunden."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:844
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846
msgid "selected to send"
msgstr "zum Übertragen ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "%i of %i Books"
msgstr "%i von %i Büchern"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868
msgid "0 of %i Books"
msgstr "0 von %i Büchern"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869
msgid "Choose format to send to device"
msgstr "Format wählen, das ans Gerät geschickt wird"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
msgid "No device"
msgstr "Kein Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
msgid "Cannot send: No device is connected"
msgstr "Übertragung schlug fehl: Kein Gerät verbunden"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:883
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:885
msgid "No card"
msgstr "Keine Speicherkarte"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:880
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:884
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:886
msgid "Cannot send: Device has no storage card"
msgstr "Übertragung schlug fehl: Keine Speicherkarte im Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:945
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1162
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1030
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1164
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
"Die folgenden Bücher vor dem Laden auf das Gerät automatisch konvertieren?"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:974
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:976
msgid "Sending catalogs to device."
msgstr "Sende Kataloge ans Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1075
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1077
msgid "Sending news to device."
msgstr "Sende Nachrichten an das Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1129
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1131
msgid "Sending books to device."
msgstr "Sende Bücher an das Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1169
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1171
msgid ""
"Could not upload the following books to the device, as no suitable formats "
"were found. Convert the book(s) to a format supported by your device first."
@@ -7947,11 +8060,11 @@ msgstr ""
"fehlen. Konvertieren Sie die Bücher zuerst in ein von Ihrem Gerät "
"unterstütztes Format."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1241
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243
msgid "No space on device"
msgstr "Gerätespeicher voll"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1242
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244
msgid ""
"
Words separated by spaces are ANDed"
@@ -10649,26 +10784,22 @@ msgstr ""
"Kommentaren, etc.
Durch Leerzeichen getrennte Worte werden mit UND "
"verknüpft"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "&Los!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Schnellsuche durchführen (Sie können auch die Eingabetaste drücken)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Schnellsuche löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Aktuellen Suchtext kopieren (anstelle des Namens der Suche)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr "Spenden"
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "J"
@@ -10691,31 +10822,31 @@ msgstr "Größe (MB)"
msgid "Modified"
msgstr "Geändert"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "Der Such-Name ist \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "Die UUID dieses Buches ist \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "In der Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Größe"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Zum Löschen ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Doppelklick ermöglicht Bearbeitung
"
@@ -11211,15 +11342,15 @@ msgstr "Diese ISBN ist gültig"
msgid "This ISBN number is invalid"
msgstr "Diese ISBN ist ungültig"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr "&Verleger:"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr "Datum löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Veröffentlichun&g:"
@@ -11292,7 +11423,7 @@ msgstr "%d von %d heruntergeladen"
msgid "Downloaded metadata fields"
msgstr "Metadaten-Felder heruntergeladen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:51
#: /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
@@ -11300,19 +11431,19 @@ msgstr "Metadaten-Felder heruntergeladen"
msgid "Next"
msgstr "Nächste"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Vorherige"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr "Metadaten bearbeiten"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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 "
@@ -11322,7 +11453,7 @@ msgstr ""
"Bei Benutzung dieses Buttons wird das Feld \"Sortierung nach Title\" von Rot "
"nach Grün wechseln."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -11330,89 +11461,100 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr "Sortierung nach Autor- Feld nach Autorenfeld setzen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr "Autorenfeld nach Sortierung nach Autor- Feld setzen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Tausche Autor und Titel"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "Unbenutzte Reihen entfernen (Reihen ohne Bücher)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr "Metadaten &Herunterladen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr "Ändern sie, wie Calibre Metadaten herunterlädt"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "Konnte Umschlagbild nicht lesen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "Konnte Umschlagbild des Formats %s nicht lesen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "Das Umschlagbild im Format %s ist ungültig"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Zugriff verweigert"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr ""
"Konnte %s nicht öffnen. Wird es von einem anderen Programm verwendet?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Speichere Änderungen und bearbeite die Metadaten von %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr "Umschlag ändern"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr "Ko&mmentare"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr "&Metadaten"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr "&Umschlag und Formate"
-#: /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 "Herunterladen der Metadaten konfigurieren"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr "Ben&utzerdefinierte Metadaten"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Bemerkungen"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11638,11 +11780,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:64
msgid "Compact Metadata"
-msgstr ""
+msgstr "Kompakte Metadaten"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:65
msgid "All on 1 tab"
-msgstr ""
+msgstr "Alles auf einem Tab"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
msgid "Done"
@@ -11661,10 +11803,13 @@ 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 ""
+"Wenn diese Option ausgewählt ist, können die Werte von Ja/Nein-Spalten Ja, "
+"Nein \n"
+"oder Unbekannt sein. Wenn nicht, können sie die Werte Ja oder Nein annehmen."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:150
msgid "Yes/No columns have three values (Requires restart)"
-msgstr ""
+msgstr "Ja/Nein-Spalten können drei Werte annehmen (erfordert Neustart)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:151
msgid "Automatically send downloaded &news to ebook reader"
@@ -11717,13 +11862,16 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:163
msgid "Edit metadata (single) layout:"
-msgstr ""
+msgstr "Layout für Metadaten (einzeln) bearbeiten:"
#: /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 ""
+"Wählt ein anderes Layout für den \"Metadaten bearbeiten\"-Dialog. Das "
+"kompakte Metadaten-Layout bevorzugt das Bearbeiten von Metadaten gegenüber "
+"dem Ändern von Umschlagbildern und Formaten."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165
msgid "Preferred &input format order:"
@@ -11843,15 +11991,16 @@ msgstr "Aus anderen Spalten zusammengesetzte Spalte"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:45
msgid "Column built from other columns, behaves like tags"
msgstr ""
+"Aus anderen Spalten zusammengesetzte Spalte, verhält sich wie Etiketten"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:52
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:53
msgid "Create a custom column"
-msgstr ""
+msgstr "BenutzerdefinierteSpalte erstellen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64
msgid "Quick create:"
-msgstr ""
+msgstr "Schnelles Erstellen:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
msgid "ISBN"
@@ -11866,7 +12015,7 @@ msgstr "Formate"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:68
msgid "People's names"
-msgstr ""
+msgstr "Personennamen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:73
msgid "Number"
@@ -11984,7 +12133,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:194
msgid "&Column type"
-msgstr ""
+msgstr "S&palten-Typ"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:195
msgid "What kind of information will be kept in the column."
@@ -11997,10 +12146,15 @@ msgid ""
"a red X.\n"
"Everything else will show nothing."
msgstr ""
+"Zeigt Kontrollmarkierungen auf der Benutzeroberfläche an. Die Werte \"Ja\", "
+"\"ausgewählt\"\n"
+"und \"true\" werden mit einem grünen Haken angezeigt. \"Nein\", \"nicht "
+"ausgewählt\" und \"false\"\n"
+"werden mit einem roten X markiert. Alle anderen Werte zeigen nichts an."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:199
msgid "Show checkmarks"
-msgstr ""
+msgstr "Markierungen anzeigen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:200
msgid ""
@@ -12061,7 +12215,7 @@ msgstr "Voreinstellung: (nichts)"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:215
msgid "&Sort/search column by"
-msgstr ""
+msgstr "&Spalten sortieren/durchsuchen nach"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:216
msgid "How this column should handled in the GUI when sorting and searching"
@@ -12070,10 +12224,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:217
msgid "If checked, this column will appear in the tags browser as a category"
msgstr ""
+"Bewirkt, dass diese Spalte als Kategorie im Etiketten-Browser erscheint"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:218
msgid "Show in tags browser"
-msgstr ""
+msgstr "Im Etiketten-Browser anzeigen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:219
msgid "Values"
@@ -12298,15 +12453,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:211
msgid "Select displayed metadata"
-msgstr ""
+msgstr "Angezeigte Metadaten auswählen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:212
msgid "Move up"
-msgstr ""
+msgstr "Nach oben verschieben"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:213
msgid "Move down"
-msgstr ""
+msgstr "Nach unten verschieben"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:214
msgid "Use &Roman numerals for series"
@@ -12317,10 +12472,12 @@ msgid ""
"Note that comments will always be displayed at the end, regardless of "
"the position you assign here."
msgstr ""
+"Beachten Sie, dass Kommentare immer am Ende angezeigt werden - "
+"unabhängig von der Position, die Sie hier zuweisen."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:217
msgid "Tags browser category &partitioning method:"
-msgstr ""
+msgstr "Art der &Gruppierung im Etiketten-Browser:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:218
msgid ""
@@ -12330,10 +12487,16 @@ msgid ""
"have a list of fixed-sized groups. Set to disabled\n"
"if you never want subcategories"
msgstr ""
+"Wählen Sie, wie Unterkategorien im Etiketten-Browser dargestellt\n"
+"werden sollen, wenn es mehr Eiträge als die Maximalgrenze gibt. \n"
+"Wählen Sie \"Nach Anfangsbuchstaben\" aus, um eine alphabetische \n"
+"Liste angezeigt zu bekommen. Wählen Sie \"Gruppiert\", um eine Liste \n"
+"aus Gruppen fester Größe zu erhalten. Wählen Sie \"Ausgeschaltet\", \n"
+"wenn Sie keine Unterkategorien benötigen."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:223
msgid "&Collapse when more items than:"
-msgstr ""
+msgstr "&Einklappen bei mehr Einträgen als:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:224
msgid ""
@@ -12341,6 +12504,11 @@ msgid ""
"up into sub-categories. If the partition method is set to disable, this "
"value is ignored."
msgstr ""
+"Wenn eine Kategorie im Etiketten-Browser mehr als diese Anzahl an Einträgen "
+"hat, wird sie\n"
+"in Unterkategorien aufgeteilt. Wenn die Gruppierungsart auf \"Augeschaltet\" "
+"gesetzt wurde,\n"
+"wird dieser Wert ignoriert."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:226
msgid "Show &average ratings in the tags browser"
@@ -12348,7 +12516,7 @@ msgstr "Zeige durchschnittliche &Bewertungen im Etiketten-Browser"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:227
msgid "Categories with &hierarchical items:"
-msgstr ""
+msgstr "Kategorien mit &hierarchischen Einträgen:"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:228
msgid ""
@@ -12420,27 +12588,27 @@ msgstr "Quelle"
msgid "Cover priority"
msgstr "Umschlagbild-Priorität"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr "Diese Quelle ist konfiguriert und bereit zum Start"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr "Diese Quelle muss konfiguriert werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -12580,35 +12748,68 @@ msgstr "&Calibre Einstellungsverzeichnis öffnen"
msgid "&Install command line tools"
msgstr "Kommandozeilen-Tools &installieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Aktuell angeschlossenes Gerät: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Aktuell angeschlossenes Gerät: Keines"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-"Dieses Format und Gerät haben bereits eine Schalttafel oder Konflikte mit "
-"einer anderen Schalttafel"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Ungültiges Ziel"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "Das Zielfeld darf nicht leer sein"
@@ -12685,15 +12886,15 @@ msgstr "Schalttafel speichern"
msgid "Delete plugboard"
msgstr "Schalttafel löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugin_type)s %(plugins)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "Plugins"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12701,82 +12902,82 @@ msgstr ""
"\n"
"Anpassung: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
msgid "Search for plugin"
-msgstr ""
+msgstr "Nach Plugin suchen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
-msgstr ""
+msgstr "Keine Treffer"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "Kein gültiger Plugin-Pfad"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s ist kein gültiger Plugin-Pfad"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "Plugin kann nicht ausgeschaltet werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "Das Plugin: %s kann nicht ausgeschaltet werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Plugin nicht anpassbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "Plugin: %s bedarf keines Anpassens"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Neustart erforderlich"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "Kann festinstalliertes Plugin nicht entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" kann nicht entfernt werden, da es ein festinstalliertes Plugin ist. "
@@ -12787,7 +12988,7 @@ msgid ""
"Here you can customize the behavior of Calibre by controlling what plugins "
"it uses."
msgstr ""
-"Hier können Sie das Verhalten von Calibrie anpassen, indem sie festlegen, "
+"Hier können Sie das Verhalten von Calibre anpassen, indem Sie festlegen, "
"welche Plugins verwendet werden."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:90
@@ -12804,7 +13005,7 @@ msgstr "Plugin entfe&rnen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:93
msgid "&Add a new plugin"
-msgstr ""
+msgstr "Neues Plugin &hinzufügen"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:33
msgid "Any custom field"
@@ -13470,6 +13671,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Suche"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -13504,18 +13715,20 @@ msgid ""
"Save current search under the name shown in the box. Press and hold for a "
"pop-up options menu."
msgstr ""
+"Aktuelle Suche unter dem Namen speichern, der im Eingabefeld steht. Durch "
+"drücken und gedrückt halten der Maustaste erscheint ein Optionenmenü."
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:458
msgid "Create saved search"
-msgstr ""
+msgstr "Gespeicherte Suche erstellen"
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:462
msgid "Delete saved search"
-msgstr ""
+msgstr "Lösche gespeicherte Suche"
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:466
msgid "Manage saved searches"
-msgstr ""
+msgstr "Gespeicherte Suchen verwalten"
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:476
msgid "*Current search"
@@ -13534,6 +13747,8 @@ msgstr "(Alle Bücher)"
msgid ""
"Books display will be restricted to those matching a selected saved search"
msgstr ""
+"Es werden nur die Bücher angezeigt, auf die die ausgewählte gespeicherte "
+"Suche zutrifft."
#: /home/kovid/work/calibre/src/calibre/gui2/search_restriction_mixin.py:53
msgid " or the search "
@@ -13550,7 +13765,7 @@ msgstr "({0} von allen)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13619,7 +13834,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -13647,22 +13862,22 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
-msgstr ""
+msgstr "&Suchanfrage"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
-msgstr ""
+msgstr "Schließen"
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:62
msgid "Search:"
@@ -13670,11 +13885,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:192
msgid "&Price:"
-msgstr ""
+msgstr "&Preis"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:196
msgid "Titl&e/Author/Price ..."
-msgstr ""
+msgstr "Tit&el/Autor/Preis"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:33
msgid "DRM"
@@ -13682,7 +13897,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:33
msgid "Price"
-msgstr ""
+msgstr "Preis"
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:175
msgid ""
@@ -13713,42 +13928,38 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-
-#: /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: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:117
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
-msgid "Stores"
-msgstr ""
+"Es konnten keine Bücher gefunden werden, die Ihrer Suche entsprechen."
#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:107
+msgid "Get Books"
+msgstr "Bücher erwerben"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
+msgid "Query:"
+msgstr "Suchanfrage:"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:123
#: /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:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
msgid "Invert"
-msgstr ""
+msgstr "Umkehren"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
msgid "Open a selected book in the system's web browser"
-msgstr ""
+msgstr "Ausgewähltes Buch im Standardbrowser öffnen"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
-msgstr ""
+msgstr "In &externem Browser öffnen"
#: /home/kovid/work/calibre/src/calibre/gui2/store/web_control.py:73
msgid ""
@@ -13784,7 +13995,7 @@ msgstr "%s umbenennen"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:349
msgid "Edit sort for %s"
-msgstr ""
+msgstr "Sortierung für %s bearbeiten"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:356
msgid "Add %s to user category"
@@ -13796,7 +14007,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:379
msgid "Delete search %s"
-msgstr ""
+msgstr "Lösche Suche %s"
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:384
msgid "Remove %s from category %s"
@@ -14145,7 +14356,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:628
msgid "Active jobs"
-msgstr ""
+msgstr "Aktive Aufträge"
#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:696
msgid ""
@@ -14685,14 +14896,6 @@ msgstr "Finde vorherige Stelle"
msgid "Print eBook"
msgstr "eBook drucken"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Groß-/Kleinschreibung ändern"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Groß-/Kleinschreibung vertauschen"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Zur Größenänderung ziehen"
@@ -14711,9 +14914,11 @@ msgstr "Umschalten"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
+"Wählen Sie Ihr Lesegerät. Wenn Ihr Gerät nicht in der Liste auftaucht, "
+"wählen sie ein \"%s\"-Gerät."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
msgid "Moving library..."
@@ -14877,8 +15082,6 @@ msgid ""
"If you are setting up a new hotmail account, you must log in to it once "
"before you will be able to send mails."
msgstr ""
-"Wenn Sie einen neuen Hotmail Account anlegen, müssen Sie sich dort zuerst "
-"einmalig anmelden bevor Sie E-Mails versenden können."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:151
msgid "Setup sending email using"
@@ -15041,7 +15244,7 @@ msgstr "Googlemail verwenden"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:146
msgid "Use Hotmail"
-msgstr "Benutze Hotmail"
+msgstr "Hotmail verwenden"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:147
msgid "&Test email"
@@ -15074,7 +15277,7 @@ msgstr "ausgewählt"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "ja"
@@ -15089,7 +15292,7 @@ msgstr "nicht ausgewählt"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "nein"
@@ -15138,16 +15341,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Zu sortierende Ausgabefelder.\n"
-"Verfügbare Felder: author_sort, id, rating, size, timestamp, title.\n"
-"Voreinstellung: '%default'\n"
-"Wird angewendet auf: CSV, XML Ausgabeformate"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -15158,7 +15357,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -15170,7 +15369,7 @@ msgstr ""
"Standard: '%default'\n"
"Angewendet bei: BibTeX- Ausgabeformat"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15182,7 +15381,7 @@ msgstr ""
"Standard: '%default'\n"
"Angewendet bei: BibTeX- Ausgabeformat"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15190,7 +15389,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -15199,7 +15398,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -15211,7 +15410,7 @@ msgstr ""
"Voreingestellt: '%default'\n"
"Betrifft: BIBTEX Ausgabe-Format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -15223,7 +15422,7 @@ msgstr ""
"Standard: '%default'\n"
"Angewendet bei: BibTeX- Ausgabeformat"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -15235,7 +15434,7 @@ msgstr ""
"Standard: '%default'\n"
"Angewendet bei: BibTeX- Ausgabeformat"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -15245,7 +15444,7 @@ msgstr ""
"Standard: '%default'\n"
"Betrifft: ePub und MOBI Ausgabeformate"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -15254,7 +15453,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -15262,7 +15461,7 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Μηδενισμός γρήγορης αναζήτησης"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9728,31 +9847,31 @@ msgstr "Μέγεθος (MB)"
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Μέγεθος"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10208,15 +10327,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10283,7 +10402,7 @@ msgstr ""
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.py:51
#: /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
@@ -10291,26 +10410,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10318,88 +10437,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Άρνηση πρόσβασης"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11322,27 +11452,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11462,33 +11592,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11548,96 +11713,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "πρόσθετα"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12282,6 +12447,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Αναζήτηση"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12361,7 +12536,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12430,7 +12605,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12458,18 +12633,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12524,40 +12699,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13445,14 +13615,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Εναλλαγή Κεφαλαία-Μικρά"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13471,8 +13633,8 @@ msgstr "Εναλλαγή"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13792,7 +13954,7 @@ msgstr "επιλεγμένο"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "ναι"
@@ -13807,7 +13969,7 @@ msgstr "μη επιλεγμένο"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13856,12 +14018,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13872,7 +14034,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13880,7 +14042,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13888,7 +14050,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13896,7 +14058,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13905,7 +14067,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13913,7 +14075,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13921,7 +14083,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13929,14 +14091,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13945,7 +14107,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13953,14 +14115,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9555,31 +9674,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10035,15 +10154,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10110,7 +10229,7 @@ msgstr ""
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.py:51
#: /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
@@ -10118,26 +10237,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10145,88 +10264,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11149,27 +11279,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11289,33 +11419,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11375,96 +11540,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12109,6 +12274,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12188,7 +12363,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12257,7 +12432,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12285,18 +12460,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12351,40 +12526,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13272,14 +13442,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13298,8 +13460,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13619,7 +13781,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13634,7 +13796,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13683,12 +13845,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13699,7 +13861,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13707,7 +13869,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13715,7 +13877,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13723,7 +13885,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13732,7 +13894,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13740,7 +13902,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13748,7 +13910,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13756,14 +13918,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13772,7 +13934,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13780,14 +13942,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9643,31 +9762,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10123,15 +10242,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10198,7 +10317,7 @@ msgstr ""
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.py:51
#: /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
@@ -10206,26 +10325,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10233,88 +10352,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11237,27 +11367,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11377,33 +11507,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11463,96 +11628,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12197,6 +12362,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12276,7 +12451,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12345,7 +12520,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12373,18 +12548,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12439,40 +12614,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13360,14 +13530,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13386,8 +13548,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13707,7 +13869,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13722,7 +13884,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13771,12 +13933,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13787,7 +13949,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13795,7 +13957,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13803,7 +13965,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13811,7 +13973,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13820,7 +13982,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13828,7 +13990,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13836,7 +13998,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13844,14 +14006,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13860,7 +14022,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13868,14 +14030,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
"
msgid "Create a catalog of the books in your calibre library"
msgstr "Create a catalogue of the books in your calibre library"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr "No books selected for catalogue generation"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Generating %s catalogue..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Catalogue generated."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Export Catalogue Directory"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Select destination for %s.%s"
@@ -4449,17 +4515,17 @@ msgid "Switch/create library..."
msgstr "Switch/create library..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Quick switch"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Rename library"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Delete library"
@@ -4501,7 +4567,7 @@ msgstr "Note that the actual library folder will be renamed."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Already exists"
@@ -4522,13 +4588,14 @@ msgstr ""
"of the files in the library is open in another program."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Are you sure?"
@@ -4566,8 +4633,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr "Success"
@@ -4707,102 +4774,109 @@ msgstr ""
"You cannot use other libraries while using the environment variable "
"CALIBRE_OVERRIDE_DATABASE_PATH."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Deleting..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Deleted"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Failed to delete"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"Failed to delete some books, click the Show Details button for details."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Del"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Remove books"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Remove selected books"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr "Remove files of a specific format from selected books.."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr "Remove all formats from selected books, except..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Remove covers from selected books"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Remove matching books from device"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "Cannot delete"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Choose formats to be deleted"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Choose formats not to be deleted"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "Cannot delete books"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "No device is connected"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Main memory"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Storage Card A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Storage Card B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "No books to delete"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "None of the selected books are on the device"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Deleting books from device."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
@@ -4810,7 +4884,7 @@ msgstr ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -4818,7 +4892,7 @@ msgstr ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -5066,11 +5140,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5152,24 +5226,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Run welcome wizard"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr "Restart in debug mode"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "Cannot configure while there are running jobs."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "Cannot configure before calibre is restarted."
@@ -5297,35 +5371,52 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Books with the same tags"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Search"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
"information."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5335,11 +5426,11 @@ msgid ""
"ebook.com/about#drm\">DRM
Words separated by spaces are ANDed"
@@ -10297,26 +10420,22 @@ msgstr ""
"
Words separated by spaces are ANDed"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "&Go!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Do Quick Search (you can also press the Enter key)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Reset Quick Search"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Copy current search text (instead of search name)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "Y"
@@ -10339,31 +10458,31 @@ msgstr "Size (MB)"
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "The lookup/search name is \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "This book's UUID is \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "In Library"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Size"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Marked for deletion"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Double click to edit me
"
@@ -10846,15 +10965,15 @@ msgstr "This ISBN number is valid"
msgid "This ISBN number is invalid"
msgstr "This ISBN number is invalid"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr "&Publisher:"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr "Clear date"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Publishe&d:"
@@ -10921,7 +11040,7 @@ msgstr ""
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.py:51
#: /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
@@ -10929,19 +11048,19 @@ msgstr ""
msgid "Next"
msgstr "Next"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Previous"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr "Edit Metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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 "
@@ -10951,7 +11070,7 @@ msgstr ""
"Using this button to create title sort will change title sort from red to "
"green."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10959,88 +11078,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Swap the author and title"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "Remove unused series (Series that have no books)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "Could not read cover"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "Could not read cover from %s format"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "The cover in the %s format is invalid"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Permission denied"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr "Could not open %s. Is it being used by another program?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Save changes and edit the metadata of %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr "Change cover"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr "Co&mments"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr "&Metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr "&Cover and formats"
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr "C&ustom metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Comments"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -12041,27 +12171,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -12182,35 +12312,68 @@ msgstr "Open calibre &configuration directory"
msgid "&Install command line tools"
msgstr "&Install command line tools"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr "Open Editor"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Device currently connected: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Device currently connected: None"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Invalid destination"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "The destination field cannot be blank"
@@ -12286,15 +12449,15 @@ msgstr "Save plugboard"
msgid "Delete plugboard"
msgstr "Delete plugboard"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugin_type)s %(plugins)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "plugins"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12302,24 +12465,24 @@ msgstr ""
"\n"
"Customisation: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
msgid "Search for plugin"
msgstr "Search for plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr "No matches"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr "Could not find any matching plugins"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr "Add plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
@@ -12329,7 +12492,7 @@ msgstr ""
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
@@ -12337,53 +12500,53 @@ msgstr ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "No valid plugin path"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s is not a valid plugin path"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr "Select an actual plugin under %s to customise"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "Plugin cannot be disabled"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "The plugin: %s cannot be disabled"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Plugin not customizable"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "Plugin: %s does not need customization"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Must restart"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
"You must restart calibre before you can configure the %s plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr "Plugin {0} successfully removed"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "Cannot remove builtin plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" cannot be removed. It is a builtin plugin. Try disabling it instead."
@@ -13149,6 +13312,16 @@ msgstr "Restore &default"
msgid "Apply any changes you made to this tweak"
msgstr "Apply any changes you made to this tweak"
+#: /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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Search"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -13229,7 +13402,7 @@ msgstr "({0} of all)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13298,7 +13471,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -13326,18 +13499,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -13392,40 +13565,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -14351,14 +14519,6 @@ msgstr "Find previous occurrence"
msgid "Print eBook"
msgstr "Print eBook"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Change Case"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Swap Case"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Drag to resize"
@@ -14377,11 +14537,9 @@ msgstr "Toggle"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
msgid "Moving library..."
@@ -14738,7 +14896,7 @@ msgstr "checked"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "yes"
@@ -14753,7 +14911,7 @@ msgstr "unchecked"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "no"
@@ -14809,16 +14967,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Output field to sort on.\n"
-"Available fields: author_sort, id, rating, size, timestamp, title.\n"
-"Default: '%default'\n"
-"Applies to: CSV, XML output formats"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14836,7 +14990,7 @@ msgstr ""
"Default: '%%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14848,7 +15002,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14860,7 +15014,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14872,7 +15026,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -14886,7 +15040,7 @@ msgstr ""
"Default: '%%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -14898,7 +15052,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -14910,7 +15064,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -14922,7 +15076,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: BIBTEX output format"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -14932,7 +15086,7 @@ msgstr ""
"Default: '%default'\n"
"Applies to: ePub, MOBI output formats"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -14946,20 +15100,20 @@ msgstr ""
"Default: '%default'\n"
"Applies to: ePub, MOBI output formats"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
-msgid ""
-"field:pattern specifying custom field/contents indicating book should be "
-"excluded.\n"
-"Default: '%default'\n"
-"Applies to ePub, MOBI output formats"
-msgstr ""
-"field:pattern specifying custom field/contents indicating book should be "
-"excluded.\n"
-"Default: '%default'\n"
-"Applies to ePub, MOBI output formats"
-
#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
+"field:pattern specifying custom field/contents indicating book should be "
+"excluded.\n"
+"Default: '%default'\n"
+"Applies to ePub, MOBI output formats"
+msgstr ""
+"field:pattern specifying custom field/contents indicating book should be "
+"excluded.\n"
+"Default: '%default'\n"
+"Applies to ePub, MOBI output formats"
+
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
+msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9591,31 +9710,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10071,15 +10190,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10146,7 +10265,7 @@ msgstr ""
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.py:51
#: /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
@@ -10154,26 +10273,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10181,88 +10300,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11185,27 +11315,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11325,33 +11455,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11411,96 +11576,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12145,6 +12310,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12224,7 +12399,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12293,7 +12468,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12321,18 +12496,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12387,40 +12562,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13308,14 +13478,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13334,8 +13496,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13655,7 +13817,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13670,7 +13832,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13719,12 +13881,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13735,7 +13897,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13743,7 +13905,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13751,7 +13913,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13759,7 +13921,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13768,7 +13930,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13776,7 +13938,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13784,7 +13946,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13792,14 +13954,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13808,7 +13970,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13816,14 +13978,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
"
msgid "Create a catalog of the books in your calibre library"
msgstr "Crear un catálogo de los libros en la biblioteca de calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr "No se ha seleccionado ningún libro para la generación de un catálogo"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Generando catálogo %s..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Catálogo generado."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Directorio para exportar catálogos"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Seleccionar destino para %s.%s"
@@ -4659,17 +4733,17 @@ msgid "Switch/create library..."
msgstr "Cambiar/crear biblioteca..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Cambio rápido"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Renombrar biblioteca"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Eliminar biblioteca"
@@ -4712,7 +4786,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Ya existe"
@@ -4734,13 +4808,14 @@ msgstr ""
"programa."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "¿Está seguro?"
@@ -4780,8 +4855,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr "Éxito"
@@ -4928,103 +5003,113 @@ msgstr ""
"No puede usar otras bibliotecas mientras usa la variable de entorno "
"CALIBRE_OVERRIDE_DATABASE_PATH."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+"Está intentando borrar %d libros. Mandar tantos libros a la papelera de "
+"reciclaje puede ser lento. ¿Quiere eliminarlos sin pasar por la "
+"papelera? Si acepta, los ficheros se borrarán permanentemente."
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Borrando…"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Borrado"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Fallo al borrar"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"No se pudieron borrar algunos libros, pulse en el botón Mostrar detalles "
"para ver más detalles."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Supr"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Eliminar libros"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Eliminar libros seleccionados"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr "Eliminar formatos específicos de los libros seleccionados.."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr "Eliminar todos los formatos de los libros seleccionados, excepto..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Eliminar portadas de los libros seleccionados"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Eliminar los libros que correspondan del dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "No se puede borrar"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Elegir formatos a borrar"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Elegir formatos que no hayan de ser borrados"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "No se pueden eliminar libros"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "No hay ningún dispositivo conectado"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Memoria principal"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Tarjeta de almacenamiento A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Tarjeta de almacenamiento B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "No hay libros para eliminar"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "Ninguno de los libros seleccionados está en el dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Eliminando libros del dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
@@ -5032,7 +5117,7 @@ msgstr ""
"Algunos de los libros seleccionados están en el dispositivo conectado. ¿De "
"dónde quiere borrar los libros seleccionades?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -5040,7 +5125,7 @@ msgstr ""
"Los libros seleccionados serán borrados permanentemente y los "
"ficheros eliminados de su biblioteca calibre. ¿Está seguro?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -5301,11 +5386,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr "Aplicando los metadatos modificados"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr "Algunos fallos"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5389,24 +5474,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr "Cambiar el comportamiento de calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Ejecutar el asistente de bienvenida"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr "Reiniciar en el modo de depuración"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "No se puede configurar mientras haya tareas en ejecución."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "No se puede configurar antes de reiniciar calibre."
@@ -5535,22 +5620,39 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Libros con las mismas etiquetas"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
msgstr "Obtener libros"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Buscar"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr "Buscar libros electrónicos"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr "Buscar este autor"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr "Buscar este título"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr "Buscar este libro"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr "Tiendas"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr "No se puede buscar"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
@@ -5558,7 +5660,7 @@ msgstr ""
"Calibre le ayuda a encontrar los libros electrónicos que desea buscando en "
"las páginas de diferentes fuentes de libros comerciales y de dominio público."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
@@ -5567,7 +5669,7 @@ msgstr ""
"Si usa la búsqueda integrada podrá encontrar qué tienda tiene el libro que "
"busca al mejor precio. También sabrá si tiene DRM y otros detalles útiles."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5583,11 +5685,11 @@ msgstr ""
"compre funcione en su lector, particularmente si se trata de libros con DRM."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:134
msgid "Show this message again"
msgstr "Volver a mostrar este mensaje"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:135
msgid "About Get Books"
msgstr "Sobre Get Books"
@@ -5710,7 +5812,7 @@ msgid "The specified directory could not be processed."
msgstr "El directorio especificado no se puede procesar."
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:843
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845
msgid "No books"
msgstr "Sin libros"
@@ -5891,8 +5993,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar_ui.py:110
#: /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:115
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:191
msgid "..."
msgstr "..."
@@ -5916,6 +6018,10 @@ msgstr ""
"&Varios libros por carpeta. Se supone que cada fichero de libro es un libro "
"diferente"
+#: /home/kovid/work/calibre/src/calibre/gui2/bars.py:190
+msgid "Donate"
+msgstr "Hacer una donación"
+
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:108
msgid "Click to open"
msgstr "Clic para abrir"
@@ -5929,7 +6035,7 @@ msgid "Book %s of %s"
msgstr "Libro %s de %s"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:144
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:978
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:981
msgid "Collections"
msgstr "Colecciones"
@@ -6029,7 +6135,7 @@ msgstr "salida"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59
#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:91
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:72
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77
@@ -6348,10 +6454,12 @@ msgid "Remove formatting"
msgstr "Eliminar formato"
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:134
msgid "Copy"
msgstr "Copiar"
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:136
msgid "Paste"
msgstr "Pegar"
@@ -7202,7 +7310,7 @@ msgstr "&Formato:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:47
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:34
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
msgid "&Inline TOC"
msgstr "Índice &interno"
@@ -7283,7 +7391,7 @@ msgid "Occurrences:"
msgstr "Casos:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:94
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:64
msgid "0"
msgstr "0"
@@ -7380,7 +7488,7 @@ msgstr "Opciones específicas para el formato de entrada."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box_ui.py:52
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/cache_progress_dialog_ui.py:50
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:61
msgid "Dialog"
msgstr "Diálogo"
@@ -7569,46 +7677,50 @@ msgstr ""
msgid "TXT Output"
msgstr "Salida TXT"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
msgid "General"
msgstr "General"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:86
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
msgid "Output &Encoding:"
msgstr "&Codificación de salida:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
msgid "&Line ending style:"
msgstr "&Final de línea:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
msgid "&Formatting:"
msgstr "&Formato:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
msgid "Plain"
msgstr "Simple"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
msgid "&Maximum line length:"
msgstr "Longitud de línea &máxima"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
msgid "Force maximum line length"
msgstr "Forzar la longitud de línea máxima"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:96
msgid "Markdown, Textile"
msgstr "Markdown, Textile"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:97
msgid "Do not remove links ( tags) before processing"
msgstr "No eliminar enlaces (etiquetas ) antes de procesar"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:98
msgid "Do not remove image references before processing"
msgstr "No eliminar referencias a imágenes antes de procesar"
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:99
+msgid "Keep text color, when possible"
+msgstr "Mantener el color del texto cuando sea posible"
+
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txtz_output.py:12
msgid "TXTZ Output"
msgstr "Salida TXTZ"
@@ -7723,10 +7835,10 @@ msgstr "No se ha podido cargar el explorador de portadas"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:183
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:302
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:566
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:607
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:630
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:681
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:608
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:682
#: /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/library/delegates.py:120
@@ -7734,27 +7846,27 @@ msgstr "No se ha podido cargar el explorador de portadas"
#: /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:1110
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1117
msgid "Undefined"
msgstr "Indefinido"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
msgid "star(s)"
msgstr "estrella(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:640
msgid "Unrated"
msgstr "Sin calificar"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:668
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Set '%s' to today"
msgstr "Establecer la fecha de hoy para '%s'"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:172
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:671
msgid "Clear '%s'"
msgstr "Limpiar «%s»"
@@ -7770,38 +7882,38 @@ msgstr ""
"La enumeración «{0}» contiene un valor inválido que se cambiará al valor "
"predeterminado"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:521
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:522
msgid "Apply changes"
msgstr "Aplicar cambios"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:714
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:715
msgid "Remove series"
msgstr "Remover series"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:717
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:718
msgid "Automatically number books"
msgstr "Numerar automáticamente los libros"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:721
msgid "Force numbers to start with "
msgstr "Forzar números para que empiecen con "
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:791
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:792
msgid ""
"The enumeration \"{0}\" contains invalid values that will not appear in the "
"list"
msgstr ""
"La enumeración «{0}» contiene un valor inválido que no aparecerá en la lista"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:835
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:836
msgid "Remove all tags"
msgstr "Eliminar todas las etiquetas"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:855
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:856
msgid "tags to add"
msgstr "etiquetas a añadir"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:863
msgid "tags to remove"
msgstr "etiquetas a eliminar"
@@ -7885,7 +7997,7 @@ msgstr "Desconectar dispositivo"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:611
#: /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/gui2/preferences/plugins.py:313
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
msgid "Error"
msgstr "Error"
@@ -7895,7 +8007,7 @@ msgid "Error communicating with device"
msgstr "Error en la comunicación con el dispositivo"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1168
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1170
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:221
msgid "No suitable formats"
msgstr "No hay formatos adecuados"
@@ -7924,61 +8036,61 @@ msgstr "Dispositivo: "
msgid " detected."
msgstr " detectado."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:844
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846
msgid "selected to send"
msgstr "elegido para enviar"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "%i of %i Books"
msgstr "%i de %i libros"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868
msgid "0 of %i Books"
msgstr "0 de %i libros"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869
msgid "Choose format to send to device"
msgstr "Elige el formato para enviar al dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
msgid "No device"
msgstr "Sin dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
msgid "Cannot send: No device is connected"
msgstr "No se pudo enviar: no hay ningún dispositivo conectado"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:883
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:885
msgid "No card"
msgstr "Sin tarjeta"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:880
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:884
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:886
msgid "Cannot send: Device has no storage card"
msgstr "No se pudo enviar: el dispositivo no tiene tarjeta de memoria"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:945
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1162
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1030
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1164
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
"¿Convertir automáticamente los siguientes libros antes de pasarlos al "
"dispositivo?"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:974
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:976
msgid "Sending catalogs to device."
msgstr "Enviando catálogos al dispositivo."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1075
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1077
msgid "Sending news to device."
msgstr "Enviando noticias al dispositivo."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1129
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1131
msgid "Sending books to device."
msgstr "Enviando libros al dispositivo."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1169
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1171
msgid ""
"Could not upload the following books to the device, as no suitable formats "
"were found. Convert the book(s) to a format supported by your device first."
@@ -7987,11 +8099,11 @@ msgstr ""
"encontraron formatos adecuados. Convierta el(los) libro(s) a un formato "
"soportado por su dispositivo antes de volver a intentarlo."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1241
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243
msgid "No space on device"
msgstr "No hay espacio en el dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1242
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244
msgid ""
"
Words separated by spaces are ANDed"
@@ -10733,26 +10867,22 @@ msgstr ""
"comentarios, etc.
Se buscan libros que contengan todas las palabras "
"separadas por espacios"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "¡&Ya!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Realizar una Búsqueda rápida (también puede pulsar la tecla Intro)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Reiniciar la búsqueda rápida"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Copiar el texto de búsqueda actual (en vez del nombre de búsqueda)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr "Hacer una donación"
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "S"
@@ -10775,31 +10905,31 @@ msgstr "Tamaño (MB)"
msgid "Modified"
msgstr "Modificado"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "El nombre de búsqueda es «{0}»"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "El UUID de este libro es «{0}»"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "En la biblioteca"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Tamaño"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Marcado para borrarlo"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Doble clic para editarme
"
@@ -11299,15 +11429,15 @@ msgstr "Este ISBN es válido"
msgid "This ISBN number is invalid"
msgstr "Este ISBN no es válido"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr "&Editor:"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr "Borrar la fecha"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Publica&do:"
@@ -11380,7 +11510,7 @@ msgstr "Descargados %d de %d"
msgid "Downloaded metadata fields"
msgstr "Campos de metadatos descargados"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:51
#: /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
@@ -11388,19 +11518,19 @@ msgstr "Campos de metadatos descargados"
msgid "Next"
msgstr "Siguiente"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Anterior"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr "Modificar metadatos"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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 "
@@ -11410,7 +11540,7 @@ msgstr ""
"Al usar este botón para crear el orden de título cambiará el fondo de rojo a "
"verde."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -11422,90 +11552,105 @@ msgstr ""
"Hay un menú de funciones para este botón al que puede acceder si lo mantiene "
"pulsado."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr "Definir orden"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr "Definir autor del orden por autor"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Intercambiar autor y título"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+"Administrar autores. Úselo para renombrar autores y corregir valores de "
+"orden de autor individuales"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
"Eliminar series que no están en uso (series que no tienen ningún libro "
"asociado)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+"Pegar el contenido del portapapeles en el cuadro de idenficadores, con el "
+"prefijo «isbn:»"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr "&Descargar metadatos"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr "Configurar descarga de metadatos"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr "Cambiar cómo descarga calibre los metadatos"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "No se pudo leer la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "No se pudo leer la portada del formato %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "La portada del formato %s no es válida"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Permiso denegado"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr "No se pudo abrir %s. ¿Lo está usando algún otro programa?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Guardar cambios y modificar los metadatos de %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr "Cambiar la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr "Co&mentarios"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr "&Metadatos"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr "&Portada y formatos"
-#: /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 "Configurar descarga de metadatos"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr "Metadatos &personalizados"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "Co&mentarios"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr "Metadatos básicos"
@@ -12574,27 +12719,27 @@ msgstr "Origen"
msgid "Cover priority"
msgstr "Prioridad de la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr "Este origen está configurado y listo"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr "Este origen necesita configuración"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr "Fecha de publicación"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr "Configurar %s
%s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr "Ningún origen seleccionado"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr "Ningún origen seleccionado, no se puede configurar."
@@ -12731,35 +12876,76 @@ msgstr "&Abrir el directorio de configuración de calibre"
msgid "&Install command line tools"
msgstr "Instalar &herramientas de línea de órdenes"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr "Abrir editor"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Dispositivo conectado actualmente: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Dispositivo conectado actualmente: Ninguno"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
-msgstr ""
-"Ese formato y dispositivo ya tiene un control o entra en conflicto con otro "
-"control."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
+msgstr "Esa combinación de formato y dispositivo ya tiene un control."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr "¿Añadir control con más prioridad?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+"Ya existe un control más general para ese formato y dispositivo. ¿Está "
+"seguro de que quiere añadir el nuevo control?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr "¿Añadir control con menos prioridad?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+"Ya existen controles de dispositivo más específicos para este formato. ¿Está "
+"seguro de que quiere añadir el nuevo control?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr "¿Añadir control?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+"Existe otro control que corresponde a la combinación de formato y "
+"dispositivo. ¿Está seguro de que quiere añadir el nuevo control?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+"Ya existen controles más especificos para formato y dispositivo. ¿Está "
+"seguro de que quiere añadir el nuevo control?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr "El dispositivo {0} no admite el formato {1}."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Destino no válido"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "El campo de destino no puede estar en blanco"
@@ -12835,15 +13021,15 @@ msgstr "Guardar control"
msgid "Delete plugboard"
msgstr "Borrar control"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugins)s de %(plugin_type)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "Complementos"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12851,24 +13037,24 @@ msgstr ""
"\n"
"Personalización: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
msgid "Search for plugin"
msgstr "Buscar complemento"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr "Sin coincidencias"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr "No se encontró ningún complemento que coincida con la búsqueda"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr "Añadir complemento"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
@@ -12878,7 +13064,7 @@ msgstr ""
"pueden contener virus o código maligno. Instálelos sólo si lo ha obtenido de "
"una fuente fiable. ¿Está seguro de que desea continuar?"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
@@ -12886,52 +13072,52 @@ msgstr ""
"El complemento {0} se ha instalado correctamente en complementos "
"de {1}. Puede que necesite reiniciar calibre para que tenga efecto."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "No hay ninguna ruta de complementos válida"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s no es una ruta de complementos válida"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr "Elija un complemento para personalizar en %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "El complemento no puede desactivarse"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "El complemento: %s no puede desactivarse"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Complemento no personalizable"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "Complemento: %s no necesita personalización"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Hay que reiniciar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr "Debe reiniciar calibre antes de configurar el complemento %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr "El complemento {0} se ha eliminado con éxito"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "No se puede eliminar el complemento incorporado"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" no puede eliminarse. Es un complemento incorporado. Intente desactivarlo en "
@@ -13739,6 +13925,16 @@ msgstr "Restablecer valores por &defecto"
msgid "Apply any changes you made to this tweak"
msgstr "Aplicar los cambios realizados en este ajuste"
+#: /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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Buscar"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr "Borrar búsqueda actual"
@@ -13824,7 +14020,7 @@ msgstr "({0} de todos)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13893,7 +14089,7 @@ msgstr "Etiquetas añadidas:"
msgid "Open store in external web browswer"
msgstr "Abrir la tienda en un explorador web externo"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr "No disponible"
@@ -13921,18 +14117,18 @@ msgstr "%s de %s libros procesados."
msgid "Updating MobileRead book cache..."
msgstr "Actualizando el caché de libros de MobileRead..."
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr "&Consulta:"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
msgstr "Libros"
-#: /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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -14001,40 +14197,35 @@ msgstr ""
"No se pudo determinar si el libro tiene restricciones de DRM. Es muy "
"probable que las tenga."
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr "No se pudo encontrar ningún libro que satisfaga las condiciones."
-#: /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:118
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:107
msgid "Get Books"
msgstr "Get Books"
-#: /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:119
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
msgid "Query:"
msgstr "Consulta:"
-#: /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 "Tiendas"
-
-#: /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:111
msgid "All"
msgstr "Todos"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
msgid "Invert"
msgstr "Invertir"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
msgid "Open a selected book in the system's web browser"
msgstr "Abrir el libro seleccionado en el navegador web del sistema"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr "Abrir en &navegador externo"
@@ -14981,14 +15172,6 @@ msgstr "Encontrar incidencia anterior"
msgid "Print eBook"
msgstr "Imprimir libro electrónico"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Cambiar mayúsculas/minúsculas"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Invertir mayúsculas/minúsculas"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Arrastre para ajustar el tamaño"
@@ -15007,11 +15190,11 @@ msgstr "Alternar"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
-"Elija su dispositivo lector. Si no está en la lista, elija un dispositivo "
-"«%s»."
+"Escoja su lector de libros electrónicos. Si su dispositivo no aparece en la "
+"lista, elija un dispositivo «%s»."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
msgid "Moving library..."
@@ -15380,7 +15563,7 @@ msgstr "checked"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "yes"
@@ -15395,7 +15578,7 @@ msgstr "unchecked"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "no"
@@ -15451,17 +15634,16 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Campo de salida por el que se ordenará.\n"
-"Los campos disponibles son: «author_sort», «id», «rating», «size», "
-"«timestamp», «title».\n"
+"Campo de salida por el que ordenar.\n"
+"Campos disponibles: author_sort, id, rating, size, timestamp, title_sort\n"
"Valor predeterminado: «%default»\n"
-"Se aplica a: formatos de salida CSV, XML"
+"Aplicable a: formatos de salida CSV, XML"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -15479,7 +15661,7 @@ msgstr ""
"Valor predeterminado: «%%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -15492,7 +15674,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15504,7 +15686,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15517,7 +15699,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -15532,7 +15714,7 @@ msgstr ""
"Valor predeterminado: «%%default»\n"
"Se aplica a: formato de salida BIBTEXT"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -15544,7 +15726,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -15556,7 +15738,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -15568,7 +15750,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formato de salida BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -15578,7 +15760,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formatos de salida ePub, MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -15592,7 +15774,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formatos de salida ePub, MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -15604,7 +15786,7 @@ msgstr ""
"Valor predeterminado: «%default»\n"
"Se aplica a: formatos de salida ePub, MOB I"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[Help
\n"
#~ "\n"
@@ -24266,6 +24497,9 @@ msgstr ""
#~ msgid "Download covers from amazon.com"
#~ msgstr "Descargar portadas de amazon.com"
+#~ msgid "Downloads metadata from Amazon"
+#~ msgstr "Descargar metadatos de Amazon"
+
#~ msgid ""
#~ "Downloads series information from ww2.kdl.org. This website cannot handle "
#~ "large numbers of queries, so the plugin is disabled by default."
@@ -24359,6 +24593,32 @@ msgstr ""
#~ " También puede recuperar las portadas si se activa la opción.\n"
#~ " "
+#~ msgid ""
+#~ "The algorithm used to copy author to author_sort\n"
+#~ "Possible values are:\n"
+#~ "invert: use \"fn ln\" -> \"ln, fn\" (the default algorithm)\n"
+#~ "copy : copy author to author_sort without modification\n"
+#~ "comma : use 'copy' if there is a ',' in the name, otherwise use 'invert'\n"
+#~ "nocomma : \"fn ln\" -> \"ln fn\" (without the comma)\n"
+#~ "When this tweak is changed, the author_sort values stored with each author\n"
+#~ "must be recomputed by right-clicking on an author in the left-hand tags "
+#~ "pane,\n"
+#~ "selecting 'manage authors', and pressing 'Recalculate all author sort "
+#~ "values'."
+#~ msgstr ""
+#~ "El algoritmo usado para copiar el autor en el orden de autor\n"
+#~ "Los valores posibles son:\n"
+#~ "invert: Transforma «nom ape» en «ape, nom» (el algoritmo predeterminado)\n"
+#~ "copy: Copia author en author_sort sin modificaciones\n"
+#~ "comma: Usa «copy» si hay una coma en el nombre, si no usa «invert»\n"
+#~ "nocomma: «nom ape» -> «ape nom» (sin coma)\n"
+#~ "Al cambiar este ajuste, el orden de autor almacenado para cada autor debe\n"
+#~ "recalcularse pulsando con el botón derecho en un autor del panel de "
+#~ "etiquetas\n"
+#~ "de la izquierda, seleccionando «Administrar autores» y pulsando «Recalcular "
+#~ "todos\n"
+#~ "los valores de orden de autor»."
+
#~ msgid ""
#~ "Set custom metadata fields that the book details panel will or will not "
#~ "display."
@@ -24372,6 +24632,30 @@ msgstr ""
#~ msgid "Configure download"
#~ msgstr "Configurar descarga"
+#~ msgid "Configure metadata downloading"
+#~ msgstr "Configurar descarga de metadatos"
+
+#~ msgid ""
+#~ "Output field to sort on.\n"
+#~ "Available fields: author_sort, id, rating, size, timestamp, title.\n"
+#~ "Default: '%default'\n"
+#~ "Applies to: CSV, XML output formats"
+#~ msgstr ""
+#~ "Campo de salida por el que se ordenará.\n"
+#~ "Los campos disponibles son: «author_sort», «id», «rating», «size», "
+#~ "«timestamp», «title».\n"
+#~ "Valor predeterminado: «%default»\n"
+#~ "Se aplica a: formatos de salida CSV, XML"
+
+#~ msgid "entertain, enrich, inspire."
+#~ msgstr "entretener, enriquecer, inspirar"
+
+#~ msgid "Kindle books from Amazon"
+#~ msgstr "Libros de Amazon para Kindle"
+
+#~ msgid "Ebooks handcrafted with the utmost care"
+#~ msgstr "Elibros hechos a mano con el mayor cuidado"
+
#~ msgid "calibre Store Search"
#~ msgstr "Búsqueda en tienda calibre"
@@ -24412,3 +24696,24 @@ msgstr ""
#~ "book_details_wont_display = ['#mycomments']\n"
#~ "Este ajuste sólo afecta a los campos personalizados. Los campos\n"
#~ "predefinidos no se ven afectados."
+
+#~ msgid "Downloads metadata from Overdrive's Content Reserve"
+#~ msgstr "Descarga metadatos de Content Reserve de Overdrive"
+
+#~ msgid "Kindle eBooks"
+#~ msgstr "Libros Kindle"
+
+#~ msgid "Foyles of London, online"
+#~ msgstr "Foyles de Londres, en línea"
+
+#~ msgid "Kindle books from Amazon.uk"
+#~ msgstr "Libros Kindle de Amazon.uk"
+
+#~ msgid "Feel every word"
+#~ msgstr "Detectar todas las palabras"
+
+#~ msgid "der eBook Shop"
+#~ msgstr "Librería electrónica der"
+
+#~ msgid "EPUBReaders eBook Shop"
+#~ msgstr "Librería electrónica EPUBReaders"
diff --git a/src/calibre/translations/et.po b/src/calibre/translations/et.po
new file mode 100644
index 0000000000..013b6ee509
--- /dev/null
+++ b/src/calibre/translations/et.po
@@ -0,0 +1,16450 @@
+# Estonian translation for calibre
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the calibre package.
+# FIRST AUTHOR or
tags that contain the words \"chapter\",\"book\",\"section\" or "
+"\"part\" as chapter titles as well as any tags that have class=\"chapter\". "
+"The expression used must evaluate to a list of elements. To disable chapter "
+"detection, use the expression \"/\". See the XPath Tutorial in the calibre "
+"User Manual for further help on using this feature."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:285
+msgid ""
+"Specify how to mark detected chapters. A value of \"pagebreak\" will insert "
+"page breaks before chapters. A value of \"rule\" will insert a line before "
+"chapters. A value of \"none\" will disable chapter marking and a value of "
+"\"both\" will use both page breaks and lines to mark chapters."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:295
+msgid ""
+"Either the path to a CSS stylesheet or raw CSS. This CSS will be appended to "
+"the style rules from the source file, so it can be used to override those "
+"rules."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:304
+msgid ""
+"An XPath expression. Page breaks are inserted before the specified elements."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:310
+msgid ""
+"Some documents specify page margins by specifying a left and right margin on "
+"each individual paragraph. calibre will try to detect and remove these "
+"margins. Sometimes, this can cause the removal of margins that should not "
+"have been removed. In this case you can disable the removal."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:321
+msgid ""
+"Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:326
+msgid ""
+"Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:331
+msgid ""
+"Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:336
+msgid ""
+"Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:342
+msgid ""
+"Change text justification. A value of \"left\" converts all justified text "
+"in the source to left aligned (i.e. unjustified) text. A value of "
+"\"justify\" converts all unjustified text to justified. A value of "
+"\"original\" (the default) does not change justification in the source file. "
+"Note that only some output formats support justification."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:352
+msgid ""
+"Remove spacing between paragraphs. Also sets an indent on paragraphs of "
+"1.5em. Spacing removal will not work if the source file does not use "
+"paragraphs (
or
tags. The tags are "
+"renumbered to prevent splitting in the middle of chapter headings."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:565
+msgid "Search pattern (regular expression) to be replaced with sr1-replace."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:570
+msgid "Replacement to replace the text found with sr1-search."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:574
+msgid "Search pattern (regular expression) to be replaced with sr2-replace."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:579
+msgid "Replacement to replace the text found with sr2-search."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:583
+msgid "Search pattern (regular expression) to be replaced with sr3-replace."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:588
+msgid "Replacement to replace the text found with sr3-search."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:690
+msgid "Could not find an ebook inside the archive"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:748
+msgid "Values of series index and rating must be numbers. Ignoring"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:755
+msgid "Failed to parse date/time"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:914
+msgid "Converting input to HTML..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:941
+msgid "Running transforms on ebook..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1037
+msgid "Creating"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/__init__.py:20
+msgid "Failed to parse: %s with error: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/__init__.py:26
+msgid "ePub Fixer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/epubcheck.py:18
+msgid "Workaround epubcheck bugs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/epubcheck.py:22
+msgid ""
+"Workarounds for bugs in the latest release of epubcheck. epubcheck reports "
+"many things as errors that are not actually errors. epub-fix will try to "
+"detect these and replace them with constructs that epubcheck likes. This may "
+"cause significant changes to your epub, complain to the epubcheck project."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/main.py:21
+msgid ""
+"%prog [options] file.epub\n"
+"\n"
+"Fix common problems in EPUB files that can cause them to be rejected by "
+"poorly designed publishing services.\n"
+"\n"
+"By default, no fixing is done and messages are printed out for each error "
+"detected. Use the options to control which errors are automatically fixed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/main.py:52
+msgid "You must specify an epub file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/unmanifested.py:17
+msgid "Fix unmanifested files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/unmanifested.py:21
+msgid ""
+"Fix unmanifested files. epub-fix can either add them to the manifest or "
+"delete them as specified by the delete unmanifested option."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/fix/unmanifested.py:32
+msgid "Delete unmanifested files instead of adding them to the manifest"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:56
+msgid ""
+"Extract the contents of the generated EPUB file to the specified directory. "
+"The contents of the directory are first deleted, so be careful."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:62
+msgid ""
+"Turn off splitting at page breaks. Normally, input files are automatically "
+"split at every page break into two files. This gives an output ebook that "
+"can be parsed faster and with less resources. However, splitting is slow and "
+"if your source file contains a very large number of page breaks, you should "
+"turn off splitting on page breaks."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:73
+msgid ""
+"Split all HTML files larger than this size (in KB). This is necessary as "
+"most EPUB readers cannot handle large file sizes. The default of %defaultKB "
+"is the size required for Adobe Digital Editions."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:80
+msgid ""
+"Normally, if the input file has no cover and you don't specify one, a "
+"default cover is generated with the title, authors, etc. This option "
+"disables the generation of this cover."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:86
+msgid ""
+"Do not use SVG for the book cover. Use this option if your EPUB is going to "
+"be used on a device that does not support SVG, like the iPhone or the "
+"JetBook Lite. Without this option, such devices will display the cover as a "
+"blank page."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:94
+msgid ""
+"When using an SVG cover, this option will cause the cover to scale to cover "
+"the available screen area, but still preserve its aspect ratio (ratio of "
+"width to height). That means there may be white borders at the sides or top "
+"and bottom of the image, but the image will never be distorted. Without this "
+"option the image may be slightly distorted, but there will be no borders."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:105
+msgid ""
+"This option is needed only if you intend to use the EPUB with FBReaderJ. It "
+"will flatten the file system inside the EPUB, putting all files into the top "
+"level."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:184
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:206
+msgid "Start"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:32
+msgid "Do not insert a Table of Contents at the beginning of the book."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:149
+msgid ""
+"Specify the sectionization of elements. A value of \"nothing\" turns the "
+"book into a single section. A value of \"files\" turns each file into a "
+"separate section; use this if your device is having trouble. A value of "
+"\"Table of Contents\" turns the entries in the Table of Contents into titles "
+"and creates sections; if it fails, adjust the \"Structure Detection\" and/or "
+"\"Table of Contents\" settings (turn on \"Force use of auto-generated Table "
+"of Contents)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:158
+msgid ""
+"Genre for the book. Choices: %s\n"
+"\n"
+" See: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:159
+msgid "for a complete list with descriptions."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:248
+msgid ""
+"Traverse links in HTML files breadth first. Normally, they are traversed "
+"depth first."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:255
+msgid ""
+"Maximum levels of recursion when following links in HTML files. Must be non-"
+"negative. 0 implies that no links in the root HTML file are followed. "
+"Default is %default."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:264
+msgid ""
+"Normally this input plugin re-arranges all the input files into a standard "
+"folder hierarchy. Only use this option if you know what you are doing as it "
+"can result in various nasty side effects in the rest of of the conversion "
+"pipeline."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/output.py:32
+msgid "CSS file used for the output instead of the default file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/output.py:35
+msgid ""
+"Template used for generation of the html index file instead of the default "
+"file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/output.py:38
+msgid ""
+"Template used for the generation of the html contents of the book instead of "
+"the default file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/html/output.py:41
+msgid ""
+"Extract the contents of the generated ZIP file to the specified directory. "
+"WARNING: The contents of the directory will be deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/htmlz/output.py:30
+msgid ""
+"Specify the handling of CSS. Default is class.\n"
+"class: Use CSS classes and have elements reference them.\n"
+"inline: Write the CSS as an inline style attribute.\n"
+"tag: Turn as many CSS styles as possible into HTML tags."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/htmlz/output.py:38
+msgid ""
+"How to handle the CSS when using css-type = 'class'.\n"
+"Default is external.\n"
+"external: Use an external CSS file that is linked in the document.\n"
+"inline: Place the CSS in the head section of the document."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lit/from_any.py:47
+msgid "Creating LIT file from EPUB..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:320
+msgid "\tBook Designer file detected."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:322
+msgid "\tParsing HTML..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:345
+msgid "\tBaen file detected. Re-parsing..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:361
+msgid "Written preprocessed HTML to "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:379
+msgid "Processing %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:393
+msgid "\tConverting to BBeB..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:539
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:552
+msgid "Could not parse file: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:544
+msgid "%s is an empty file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
+msgid "Failed to parse link %s %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:608
+msgid "Cannot add link %s to TOC"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:957
+msgid "Unable to process image %s. Error: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1002
+msgid "Unable to process interlaced PNG %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1017
+msgid ""
+"Could not process image: %s\n"
+"%s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1772
+msgid ""
+"An error occurred while processing a table: %s. Ignoring table markup."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1774
+msgid ""
+"Bad table:\n"
+"%s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1796
+msgid "Table has cell that is too large"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1862
+msgid "Could not read cover image: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1865
+msgid "Cannot read from: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1994
+msgid "Failed to process opf file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:136
+msgid ""
+"%prog book.lrf\n"
+"Convert an LRF file into an LRS (XML UTF-8 encoded) file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:137
+msgid "Output LRS file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:139
+msgid "Do not save embedded image and font files to disk"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:158
+msgid "Parsing LRF..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:161
+msgid "Creating XML..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:163
+msgid "LRS written to "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:267
+msgid "Could not read from thumbnail file:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:287
+msgid ""
+"%prog [options] file.lrs\n"
+"Compile an LRS file into an LRF file."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:288
+msgid "Path to output file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:290
+msgid "Verbose processing"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrs/convert_from.py:292
+msgid "Convert LRS to LRS, useful for debugging."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:457
+msgid "Invalid LRF file. Could not set metadata."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:582
+msgid ""
+"%prog [options] mybook.lrf\n"
+"\n"
+"\n"
+"Show/edit the metadata in an LRF file.\n"
+"\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:589
+msgid "Set the book title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:591
+msgid "Set sort key for the title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:593
+msgid "Set the author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:595
+msgid "Set sort key for the author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:597
+msgid "The category this book belongs to. E.g.: History"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:600
+msgid "Path to a graphic that will be set as this files' thumbnail"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:603
+msgid ""
+"Path to a txt file containing the comment to be stored in the lrf file."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:607
+msgid "Extract thumbnail from LRF file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:608
+msgid "Set the publisher"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:609
+msgid "Set the book classification"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:610
+msgid "Set the book creator"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:611
+msgid "Set the book producer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:613
+msgid ""
+"Extract cover from LRF file. Note that the LRF format has no defined cover, "
+"so we use some heuristics to guess the cover."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:615
+msgid "Set book ID"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:90
+msgid "Enable autorotation of images that are wider than the screen width."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:94
+msgid "Set the space between words in pts. Default is %default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:97
+msgid "Add a header to all the pages with title and author."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:100
+msgid ""
+"Set the format of the header. %a is replaced by the author and %t by the "
+"title. Default is %default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:104
+msgid "Add extra spacing below the header. Default is %default pt."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:107
+msgid ""
+"Minimum paragraph indent (the indent of the first line of a paragraph) in "
+"pts. Default: %default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:112
+msgid ""
+"Render tables in the HTML as images (useful if the document has large or "
+"complex tables)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:117
+msgid ""
+"Multiply the size of text in rendered tables by this factor. Default is "
+"%default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:121
+msgid "The serif family of fonts to embed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:124
+msgid "The sans-serif family of fonts to embed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:127
+msgid "The monospace family of fonts to embed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:152
+msgid "Comic"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41
+msgid ""
+"Extract common e-book formats from archives (zip/rar) files. Also try to "
+"autodetect if they are actually cbz/cbr files."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:145
+msgid "TEMPLATE ERROR"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:628
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:563
+msgid "No"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:628
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:563
+msgid "Yes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:723
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:132
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/models.py:23
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:33
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:331
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:574
+msgid "Title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:724
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:978
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/models.py:23
+msgid "Author(s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:725
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:149
+msgid "Publisher"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:726
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49
+msgid "Producer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:727
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:211
+msgid "Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:729
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:151
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:761
+msgid "Tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:731
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:153
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:114
+msgid "Series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:732
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:154
+msgid "Language"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:734
+msgid "Timestamp"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:736
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:132
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:271
+msgid "Published"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:738
+msgid "Rights"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:20
+msgid "options"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:21
+msgid ""
+"\n"
+"Read/Write metadata from/to ebook files.\n"
+"\n"
+"Supported formats for reading metadata: %s\n"
+"\n"
+"Supported formats for writing metadata: %s\n"
+"\n"
+"Different file types support different kinds of metadata. If you try to set\n"
+"some metadata on a file type that does not support it, the metadata will be\n"
+"silently ignored.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:40
+msgid ""
+"Set the authors. Multiple authors should be separated by the & character. "
+"Author names should be in the order Firstname Lastname."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:44
+msgid ""
+"The version of the title to be used for sorting. If unspecified, and the "
+"title is specified, it will be auto-generated from the title."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:48
+msgid ""
+"String to be used when sorting by author. If unspecified, and the author(s) "
+"are specified, it will be auto-generated from the author(s)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:52
+msgid "Set the cover to the specified file."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:58
+msgid "Set the book category."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:74
+msgid "Set the published date."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:77
+msgid "Get the cover from the ebook and save it at as the specified file."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:80
+msgid ""
+"Specify the name of an OPF file. The metadata will be written to the OPF "
+"file."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:83
+msgid ""
+"Read metadata from the specified OPF file and use it to set metadata in the "
+"ebook. Metadata specified on the command line will override metadata read "
+"from the OPF file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:88
+msgid "Set the BookID in LRF files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:153
+msgid "No file specified"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:168
+msgid "Original metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:185
+msgid "Changed metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:197
+msgid "OPF created in"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:203
+msgid "Cover saved to"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:205
+msgid "No cover found"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64
+msgid ""
+"\n"
+"%prog [options] ISBN\n"
+"\n"
+"Fetch a cover image/social metadata for the book identified by ISBN from "
+"LibraryThing.com\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1358
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:883
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:33
+msgid "Cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:384
+msgid "Downloads metadata and covers from Amazon"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:394
+msgid "US"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:395
+msgid "France"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:396
+msgid "Germany"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:397
+msgid "UK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:398
+msgid "Italy"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:402
+msgid "Amazon website to use:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:403
+msgid ""
+"Metadata from Amazon will be fetched using this country's Amazon website."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:508
+msgid "Amazon timed out. Try again later."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:159
+msgid "Metadata source"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/douban.py:154
+msgid "Downloads metadata and covers from Douban.com"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:160
+msgid "Downloads metadata and covers from Google Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/isbndb.py:27
+msgid "Downloads metadata from isbndb.com"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/isbndb.py:37
+msgid "IsbnDB key:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/isbndb.py:38
+msgid ""
+"To use isbndb.com you have to sign up for a free accountat isbndb.com and "
+"get an access key."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/isbndb.py:42
+msgid ""
+"To use metadata from isbndb.com you must sign up for a free account and get "
+"an isbndb key and enter it below. Instructions to get the key are here."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/openlibrary.py:15
+msgid "Downloads covers from The Open Library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:33
+msgid "Downloads metadata and covers from Overdrive's Content Reserve"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:45
+msgid "Download all metadata (slow)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:46
+msgid "Enable this option to gather all metadata available from Overdrive."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/overdrive.py:49
+msgid ""
+"Additional metadata can be taken from Overdrive's book detail page. This "
+"includes a limited set of tags used by libraries, comments, language, and "
+"the ebook ISBN. Collecting this data is disabled by default due to the extra "
+"time required. Check the download all metadata option below to enable "
+"downloading this data."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22
+msgid "Modify images to meet Palm device size limitations."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:26
+msgid "When present, use author sort field as author."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:30
+msgid ""
+"Don't add Table of Contents to end of book. Useful if the book has its own "
+"table of contents."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:33
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:56
+msgid "Title for any generated in-line table of contents."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:37
+msgid "Disable compression of the file contents."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:40
+msgid "Tag marking book to be filed with Personal Docs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:44
+msgid ""
+"Ignore margins in the input document. If False, then the MOBI output plugin "
+"will try to convert margins specified in the input document, otherwise it "
+"will ignore them."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:113
+msgid "All articles"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:274
+msgid "This is an Amazon Topaz book. It cannot be processed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
+msgid "Title Page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:56
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:199
+msgid "Table of Contents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
+msgid "Index"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
+msgid "Glossary"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
+msgid "Acknowledgements"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
+msgid "Bibliography"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
+msgid "Colophon"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1501
+msgid "Copyright"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1502
+msgid "Dedication"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1503
+msgid "Epigraph"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1504
+msgid "Foreword"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1505
+msgid "List of Illustrations"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1506
+msgid "List of Tables"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1507
+msgid "Notes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1508
+msgid "Preface"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1509
+msgid "Main Text"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/iterator.py:41
+msgid "%s format books are not supported"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/cover.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:783
+msgid "Book %s of %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:54
+msgid "HTML TOC generation options."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:150
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:759
+msgid "Rating"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/split.py:34
+msgid ""
+"Could not find reasonable point at which to split: %s Sub-tree size: %d KB"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:32
+msgid "OPF/NCX/etc. generation options."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:35
+msgid "OPF version to generate. Default is %default."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:37
+msgid ""
+"Generate an Adobe \"page-map\" file if pagination information is available."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/reader132.py:128
+msgid "Footnotes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/reader132.py:139
+msgid "Sidebar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:23
+msgid "Format to use inside the pdb container. Choices are:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:27
+msgid ""
+"Specify the character encoding of the output document. The default is "
+"cp1252. Note: This option is not honored by all formats."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:32
+#: /home/kovid/work/calibre/src/calibre/ebooks/pml/output.py:36
+#: /home/kovid/work/calibre/src/calibre/ebooks/rb/output.py:21
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:40
+msgid "Add Table of Contents to beginning of the book."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/input.py:24
+msgid "Do not extract images from the document"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/input.py:26
+msgid ""
+"Scale used to determine the length at which a line should be unwrapped. "
+"Valid values are a decimal between 0 and 1. The default is 0.45, just below "
+"the median line length."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/input.py:30
+msgid "Use the new PDF conversion engine."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/cli.py:31
+msgid ""
+"command ...\n"
+"\n"
+"command can be one of the following:\n"
+"[%%commands]\n"
+"\n"
+"Use %prog command --help to get more information about a specific command\n"
+"\n"
+"Manipulate a PDF.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:29
+msgid ""
+"[options] file.pdf\n"
+"\n"
+"Crop a PDF file.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:38
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/decrypt.py:32
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/encrypt.py:34
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/merge.py:36
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/reverse.py:34
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:33
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:41
+msgid ""
+"Path to output file. By default a file is created in the current directory."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:41
+msgid "Number of pixels to crop from the left most x (default is %s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:44
+msgid "Number of pixels to crop from the left most y (default is %s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:47
+msgid "Number of pixels to crop from the right most x (default is %s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:50
+msgid "Number of pixels to crop from the right most y (default is %s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:53
+msgid ""
+"A file generated by ghostscript which allows each page to be individually "
+"cropped `gs -dSAFER -dNOPAUSE -dBATCH -sDEVICE=bbox file.pdf 2> bounding`"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:73
+msgid "Crop Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/crop.py:73
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/decrypt.py:60
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/encrypt.py:54
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/merge.py:56
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/reverse.py:54
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:53
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:61
+msgid "Options to control the transformation of pdf"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/decrypt.py:23
+msgid ""
+"[options] file.pdf password\n"
+"\n"
+"Decrypt a PDF.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/decrypt.py:60
+msgid "Decrypt Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/encrypt.py:25
+msgid ""
+"[options] file.pdf password\n"
+"\n"
+"Encrypt a PDF.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/encrypt.py:54
+msgid "Encrypt Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:21
+msgid ""
+"file.pdf ...\n"
+"\n"
+"Get info about a PDF.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:40
+msgid "Author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
+msgid "Subject"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:48
+msgid "Creator"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:50
+msgid "Pages"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:51
+msgid "File Size"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:52
+msgid "PDF Version"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/merge.py:25
+msgid ""
+"[options] file1.pdf file2.pdf ...\n"
+"\n"
+"Metadata will be used from the first PDF specified.\n"
+"\n"
+"Merges individual PDFs.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/merge.py:56
+msgid "Merge Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/reverse.py:25
+msgid ""
+"[options] file.pdf\n"
+"\n"
+"Reverse a PDF.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/reverse.py:54
+msgid "Reverse Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:24
+msgid ""
+"file.pdf degrees\n"
+"\n"
+"Rotate pages of a PDF clockwise.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/rotate.py:53
+msgid "Rotate Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:25
+msgid ""
+"\n"
+"%prog %%name [options] file.pdf page_to_split_on ...\n"
+"%prog %%name [options] file.pdf page_range_to_split_on ...\n"
+"\t\n"
+"Ex.\n"
+"\t\n"
+"%prog %%name file.pdf 6\n"
+"%prog %%name file.pdf 6-12\n"
+"%prog %%name file.pdf 6-12 8 10 9-20\n"
+"\n"
+"Split a PDF.\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:61
+msgid "Split Options:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:31
+msgid ""
+"The unit of measure. Default is inch. Choices are %s Note: This does not "
+"override the unit for margins!"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:36
+msgid ""
+"The size of the paper. This size will be overridden when an output profile "
+"is used. Default is letter. Choices are %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:40
+msgid ""
+"Custom size of the document. Use the form widthxheight EG. `123x321` to "
+"specify the width and height. This overrides any specified paper-size."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:45
+msgid "The orientation of the page. Default is portrait. Choices are %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:49
+msgid ""
+"Preserve the aspect ratio of the cover, instead of stretching it to fill the "
+"full first page of the generated pdf."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/pdftohtml.py:57
+msgid "Could not find pdftohtml, check it is in your PATH"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pml/output.py:32
+msgid ""
+"Specify the character encoding of the output document. The default is cp1252."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/pml/output.py:39
+msgid ""
+"Do not reduce the size or bit depth of images. Images have their size and "
+"depth reduced by default to accommodate applications that can not convert "
+"images on their own such as Dropbook."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:102
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:97
+msgid "Table of Contents:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:272
+msgid ""
+"This RTF file has a feature calibre does not support. Convert it to HTML "
+"first and then try it.\n"
+"%s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/rtf2xml/hex_2_utf8.py:296
+msgid "error no state found in hex_2_utf8"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:25
+#: /home/kovid/work/calibre/src/calibre/ebooks/tcr/output.py:23
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:36
+msgid ""
+"Specify the character encoding of the output document. The default is utf-8."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:29
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:43
+msgid ""
+"The maximum number of characters per line. This splits on the first space "
+"before the specified value. If no space is found the line will be broken at "
+"the space after and will exceed the specified value. Also, there is a "
+"minimum of 25 characters. Use 0 to disable line splitting."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:36
+msgid ""
+"Specify whether or not to insert an empty line between two paragraphs."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:40
+msgid ""
+"Specify whether or not to insert two space characters to indent the first "
+"line of each paragraph."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:44
+msgid ""
+"Specify whether or not to hide the chapter title for each chapter. Useful "
+"for image-only output (eg. comics)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:48
+msgid "Resize all the images for full screen view. "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:125
+msgid "Start Page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:135
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:137
+msgid "Cover Pages"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:150
+#: /home/kovid/work/calibre/src/calibre/ebooks/snb/output.py:153
+msgid " (Preface)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:30
+msgid ""
+"Paragraph structure.\n"
+"choices are ['auto', 'block', 'single', 'print', 'unformatted', 'off']\n"
+"* auto: Try to auto detect paragraph type.\n"
+"* block: Treat a blank line as a paragraph break.\n"
+"* single: Assume every line is a paragraph.\n"
+"* print: Assume every line starting with 2+ spaces or a tab starts a "
+"paragraph.\n"
+"* unformatted: Most lines have hard line breaks, few/no blank lines or "
+"indents. Tries to determine structure and reformat the differentiate "
+"elements.\n"
+"* off: Don't modify the paragraph structure. This is useful when combined "
+"with Markdown or Textile formatting to ensure no formatting is lost."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:43
+msgid ""
+"Formatting used within the document.* auto: Automatically decide which "
+"formatting processor to use.\n"
+"* plain: Do not process the document formatting. Everything is a paragraph "
+"and no styling is applied.\n"
+"* heuristic: Process using heuristics to determine formatting such as "
+"chapter headings and italic text.\n"
+"* textile: Processing using textile formatting.\n"
+"* markdown: Processing using markdown formatting. To learn more about "
+"markdown see"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:53
+msgid ""
+"Normally extra spaces are condensed into a single space. With this option "
+"all spaces will be displayed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:56
+msgid ""
+"Normally extra space at the beginning of lines is retained. With this option "
+"they will be removed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:59
+msgid "Do not insert a Table of Contents into the output text."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:30
+msgid ""
+"Type of newline to use. Options are %s. Default is 'system'. Use 'old_mac' "
+"for compatibility with Mac OS 9 and earlier. For Mac OS X use 'unix'. "
+"'system' will default to the newline type used by this OS."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:50
+msgid ""
+"Force splitting on the max-line-length value when no space is present. Also "
+"allows max-line-length to be below the minimum"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:55
+msgid ""
+"Formatting used within the document.\n"
+"* plain: Produce plain text.\n"
+"* markdown: Produce Markdown formatted text.\n"
+"* textile: Produce Textile formatted text."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:61
+msgid ""
+"Do not remove links within the document. This is only useful when paired "
+"with a txt-output-formatting option that is not none because links are "
+"always removed with plain text output."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:66
+msgid ""
+"Do not remove image references within the document. This is only useful when "
+"paired with a txt-output-formatting option that is not none because links "
+"are always removed with plain text output."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:71
+msgid ""
+"Do not remove font color from output. This is only useful when txt-output-"
+"formatting is set to textile. Textile is the only formatting that supports "
+"setting font color. If this option is not specified font color will not be "
+"set and default to the color displayed by the reader (generally this is "
+"black)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103
+msgid "Send file to storage card instead of main memory by default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105
+msgid "Confirm before deleting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:107
+msgid "Main window geometry"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:109
+msgid "Notify when a new version is available"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:111
+msgid "Use Roman numerals for series number"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113
+msgid "Sort tags list by name, popularity, or rating"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:115
+msgid "Match tags by any or all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:117
+msgid "Number of covers to show in the cover browsing mode"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:119
+msgid "Defaults for conversion to LRF"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:121
+msgid "Options for the LRF ebook viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:124
+msgid "Formats that are viewed using the internal viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:126
+msgid "Columns to be displayed in the book list"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:127
+msgid "Automatically launch content server on application startup"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:128
+msgid "Oldest news kept in database"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:129
+msgid "Show system tray icon"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:131
+msgid "Upload downloaded news to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133
+msgid "Delete books from library after uploading to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135
+msgid ""
+"Show the cover flow in a separate window instead of in the main calibre "
+"window"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137
+msgid "Disable notifications from the system tray icon"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139
+msgid "Default action to perform when send to device button is clicked"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144
+msgid ""
+"Start searching as you type. If this is disabled then search will only take "
+"place when the Enter or Return key is pressed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:147
+msgid ""
+"When searching, show all books with search results highlighted instead of "
+"showing only the matches. You can use the N or F3 keys to go to the next "
+"match."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:165
+msgid ""
+"Maximum number of simultaneous conversion/news download jobs. This number is "
+"twice the actual value for historical reasons."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:169
+msgid "Download social metadata (tags/rating/etc.)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:171
+msgid "Overwrite author and title with new metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:173
+msgid "Automatically download the cover, if available"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:175
+msgid "Limit max simultaneous jobs to number of CPUs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:177
+msgid "The layout of the user interface"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:179
+msgid "Show the average rating per item indication in the tag browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:181
+msgid "Disable UI animations"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:186
+msgid "tag browser categories not to display"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:461
+msgid "Choose Files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:29
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:599
+msgid "Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:30
+msgid "EPUB Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:31
+msgid "LRF Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:32
+msgid "HTML Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:33
+msgid "LIT Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:34
+msgid "MOBI Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:35
+msgid "Topaz books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:36
+msgid "Text books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:37
+msgid "PDF Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:38
+msgid "SNB Books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:39
+msgid "Comics"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:40
+msgid "Archives"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:47
+msgid "Add books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:48
+msgid "Add books to the calibre library/device from files on your computer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:49
+msgid "A"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:55
+msgid "Add books from a single directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:57
+msgid ""
+"Add books from directories, including sub-directories (One book per "
+"directory, assumes every ebook file is the same book in a different format)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:61
+msgid ""
+"Add books from directories, including sub directories (Multiple books per "
+"directory, assumes every ebook file is a different book)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:65
+msgid "Add Empty book. (Book entry with no formats)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:66
+msgid "Shift+Ctrl+E"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:67
+msgid "Add from ISBN"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:69
+msgid "Add files to selected book records"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:70
+msgid "Shift+A"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:90
+msgid "Are you sure"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:91
+msgid ""
+"Are you sure you want to add the same files to all %d books? If the "
+"formatalready exists for a book, it will be replaced."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:97
+msgid "Select book files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:168
+msgid "Adding"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:169
+msgid "Creating book records from ISBNs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:317
+msgid "Uploading books to device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:288
+msgid "Supported books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:291
+msgid "Select books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:328
+msgid "Merged some books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:329
+msgid ""
+"The following duplicate books were found and incoming book formats were "
+"processed and merged into your Calibre database according to your automerge "
+"settings:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:349
+msgid "Failed to read metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:350
+msgid "Failed to read metadata from the following"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:371
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:395
+msgid "Add to library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:127
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:185
+msgid "No book selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:389
+msgid ""
+"The following books are virtual and cannot be added to the calibre library:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:395
+msgid "No book files found"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add_to_library.py:13
+msgid "Add books to library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/add_to_library.py:14
+msgid "Add books to your calibre library from the connected device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:20
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543
+msgid "Fetch annotations (experimental)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:56
+msgid "Not supported"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:57
+msgid "Fetching annotations is not supported for this device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:245
+msgid "Use library only"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:246
+msgid "User annotations generated from main library only"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:33
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:127
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:156
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:220
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:257
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92
+msgid "No books selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:70
+msgid "No books selected to fetch annotations from"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:95
+msgid "Merging user annotations into database"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:123
+msgid "%s
Last Page Read: %d (%d%%)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:129
+msgid "%s
Last Page Read: Location %d (%d%%)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:148
+msgid "Location %d • %s
%s
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:157
+msgid "Page %d • %s
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:162
+msgid "Location %d • %s
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:20
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:34
+msgid "Create a catalog of the books in your calibre library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
+msgid "No books selected for catalog generation"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
+msgid "Generating %s catalog..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+msgid "Catalog generated."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
+msgid "Export Catalog Directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
+msgid "Select destination for %s.%s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:57
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:170
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:125
+msgid "%d books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:82
+msgid "Choose calibre library to work with"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:94
+msgid "Switch/create library..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
+msgid "Quick switch"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
+msgid "Rename library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
+msgid "Delete library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:112
+msgid "Pick a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:132
+msgid "Library Maintenance"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:133
+msgid "Library metadata backup status"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:137
+msgid "Start backing up metadata of all books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:141
+msgid "Check library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:145
+msgid "Restore database"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:220
+msgid "Rename"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:221
+msgid "Choose a new name for the library %s. "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:222
+msgid "Note that the actual library folder will be renamed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
+msgid "Already exists"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:230
+msgid "The folder %s already exists. Delete it first."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:236
+msgid "Rename failed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:237
+msgid ""
+"Failed to rename the library at %s. The most common cause for this is if one "
+"of the files in the library is open in another program."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
+#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
+#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
+msgid "Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:249
+msgid ""
+"All files (not just ebooks) from "
+"
%s
will be permanently deleted. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:270
+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:278
+msgid "Backup metadata"
+msgstr ""
+
+#: /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: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:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+msgid "Success"
+msgstr ""
+
+#: /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: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/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:318
+msgid "Database integrity check failed, click Show details for details."
+msgstr ""
+
+#: /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: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:333
+msgid "No library found"
+msgstr ""
+
+#: /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: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:854
+msgid "Not allowed"
+msgstr ""
+
+#: /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:406
+msgid "You cannot change libraries while jobs are running."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:22
+msgid "C"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:22
+msgid "Convert books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:28
+msgid "Convert individually"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:30
+msgid "Bulk convert"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:86
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:560
+msgid "Cannot convert"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:115
+msgid "Starting conversion of %d book(s)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:171
+msgid "Empty output file, probably the conversion process crashed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:83
+msgid "Copy to library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:84
+msgid "Copy selected books to the specified library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:117
+msgid "(delete after copy)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:126
+msgid "Cannot copy"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:131
+msgid "No library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:132
+msgid "No library found at %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:139
+msgid "Copying"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
+msgid "Could not copy books: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:153
+msgid "Copied %d books to %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:168
+msgid ""
+"You cannot use other libraries while using the environment variable "
+"CALIBRE_OVERRIDE_DATABASE_PATH."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
+msgid "Deleting..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
+msgid "Deleted"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
+msgid "Failed to delete"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
+msgid ""
+"Failed to delete some books, click the Show Details button for details."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+msgid "Del"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+msgid "Remove books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+msgid "Remove selected books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
+msgid "Remove files of a specific format from selected books.."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
+msgid "Remove all formats from selected books, except..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
+msgid "Remove covers from selected books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
+msgid "Remove matching books from device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
+msgid "Cannot delete"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
+msgid "Choose formats to be deleted"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
+msgid "Choose formats not to be deleted"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+msgid "Cannot delete books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+msgid "No device is connected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
+msgid "Main memory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
+msgid "Storage Card A"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
+msgid "Storage Card B"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
+msgid "No books to delete"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
+msgid "None of the selected books are on the device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
+msgid "Deleting books from device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
+msgid ""
+"Some of the selected books are on the attached device. Where do you "
+"want the selected files deleted from?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
+msgid ""
+"The selected books will be permanently deleted and the files removed "
+"from your calibre library. Are you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
+msgid ""
+"The selected books will be permanently deleted from your device. Are "
+"you sure?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:31
+msgid "Connect to folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:36
+msgid "Connect to iTunes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:42
+msgid "Connect to Bambook"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:56
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:64
+msgid "Start Content Server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:66
+msgid "Stop Content Server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:77
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:96
+msgid "Email to"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:81
+msgid "Email to and delete from library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:90
+msgid "(delete from library)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:105
+msgid "Setup email based sharing of books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
+msgid "D"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
+msgid "Send to device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:141
+msgid "Connect/share"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:79
+msgid "Stopping"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:80
+msgid "Stopping server, this could take upto a minute, please wait..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_collections.py:13
+msgid "Manage collections"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_collections.py:14
+msgid "Manage the collections on this device"
+msgstr ""
+
+#: /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:24
+msgid "Edit metadata"
+msgstr ""
+
+#: /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:29
+msgid "M"
+msgstr ""
+
+#: /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:34
+msgid "Edit metadata in bulk"
+msgstr ""
+
+#: /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:42
+msgid "Merge into first selected book - delete others"
+msgstr ""
+
+#: /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:49
+msgid "Merge only formats into first selected book - delete others"
+msgstr ""
+
+#: /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:81
+msgid "Failed to download metadata"
+msgstr ""
+
+#: /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: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:91
+msgid "Metadata download completed"
+msgstr ""
+
+#: /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: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:107
+msgid "Download complete"
+msgstr ""
+
+#: /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:136
+msgid "Some books changed"
+msgstr ""
+
+#: /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. "
+"Click \"Show details\" to see the list of changed books. Do you want to "
+"proceed?"
+msgstr ""
+
+#: /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: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:260
+msgid "At least two books must be selected for merging"
+msgstr ""
+
+#: /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: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 "
+"second and subsequently selected books will not be deleted or "
+"changed.
Please confirm you want to proceed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/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 "
+"changed.Author, Title, ISBN and all other metadata will not be "
+"merged.
After merger the second and subsequently selected books, with "
+"any metadata they have will be deleted.
All book formats of "
+"the first selected book will be kept and any duplicate formats in the second "
+"and subsequently selected books will be permanently deleted from your "
+"calibre library.
Are you sure you want to proceed?"
+msgstr ""
+
+#: /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 "
+"merged.
After merger the second and subsequently selected books will "
+"be deleted.
All book formats of the first selected book will "
+"be kept and any duplicate formats in the second and subsequently selected "
+"books will be permanently deleted from your calibre library.
"
+"Are you sure you want to proceed?"
+msgstr ""
+
+#: /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:520
+msgid "Some failures"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
+msgid ""
+"Failed to apply updated metadata for some books in your library. Click "
+"\"Show Details\" to see details."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:19
+msgid "F"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:19
+msgid "Fetch news"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:54
+msgid "Fetching news from "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:83
+msgid " fetched."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/help.py:16
+msgid "Browse the calibre User Manual"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/help.py:16
+msgid "F1"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/help.py:16
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks_ui.py:91
+msgid "Help"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:12
+msgid "Move to next match"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:13
+msgid "Move to next highlighted match"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:13
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
+msgid "N"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:13
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:204
+msgid "F3"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:25
+msgid "Move to previous item"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:26
+msgid "Move to previous highlighted item"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:26
+msgid "Shift+N"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:27
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:213
+msgid "Shift+F3"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/open.py:14
+msgid "Open containing folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/open.py:15
+msgid "O"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:18
+msgid "Ctrl+P"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+msgid "Change calibre behavior"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
+#: /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:29
+msgid "Restart in debug mode"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
+msgid "Cannot configure while there are running jobs."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
+msgid "Cannot configure before calibre is restarted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/restart.py:14
+msgid "&Restart"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/restart.py:14
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/main.py:59
+msgid "Ctrl+R"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:24
+msgid "Save single format to disk..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:40
+msgid "S"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:40
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:46
+msgid "Save to disk"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:48
+msgid "Save to disk in a single directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:69
+msgid "Save only %s format to disk"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:72
+msgid "Save only %s format to disk in a single directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:91
+msgid "Cannot save to disk"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:94
+msgid "Choose destination directory"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:102
+msgid ""
+"You are trying to save files into the calibre library. This can cause "
+"corruption of your library. Save to disk is meant to export files from your "
+"calibre library elsewhere."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:136
+msgid "Error while saving"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:137
+msgid "There was an error while saving."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:145
+msgid "Could not save some books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:146
+msgid "Click the show details button to see which ones."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:766
+msgid "Show book details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:17
+msgid "I"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:26
+msgid "No detailed info available"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:27
+msgid "No detailed information is available for books on the device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:17
+msgid "Similar books..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:24
+msgid "Alt+A"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:24
+msgid "Books by same author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:25
+msgid "Books in this series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:26
+msgid "Alt+Shift+S"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:27
+msgid "Alt+P"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:27
+msgid "Books by this publisher"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:28
+msgid "Alt+T"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/similar_books.py:28
+msgid "Books with the same tags"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
+msgid "Get books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
+msgid ""
+"Calibre helps you find the ebooks you want by searching the websites of "
+"various commercial and public domain book sources for you."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
+msgid ""
+"Using the integrated search you can easily find which store has the book you "
+"are looking for, at the best price. You also get DRM status and other useful "
+"information."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
+msgid ""
+"All transactions (paid or otherwise) are handled between you and the book "
+"seller. Calibre is not part of this process and any issues related to a "
+"purchase should be directed to the website you are buying from. Be sure to "
+"double check that any books you get will work with your e-book reader, "
+"especially if the book you are buying has DRM."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:134
+msgid "Show this message again"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:135
+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:60
+msgid "Tweak ePub"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:16
+msgid "Make small changes to ePub format books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:17
+msgid "T"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:27
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:39
+msgid "Cannot tweak ePub"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:40
+msgid "No ePub available. First convert the book to ePub."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:36
+msgid "V"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:36
+msgid "View"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:43
+msgid "View specific format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:51
+msgid "Read a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:55
+msgid "Clear recently viewed list"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:226
+msgid "Cannot view"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:166
+msgid "Format unavailable"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:153
+msgid "Selected books have no formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:127
+msgid "Choose the format to view"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:167
+msgid ""
+"Not all the selected books were available in the %s format. You should "
+"convert them first."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:174
+msgid "Multiple Books Selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:175
+msgid ""
+"You are attempting to open %d books. Opening too many books at once can be "
+"slow and have a negative effect on the responsiveness of your computer. Once "
+"started the process cannot be stopped until complete. Do you wish to "
+"continue?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:184
+msgid "Cannot open folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:220
+msgid "This book no longer exists in your library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:227
+msgid "%s has no available formats."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:68
+msgid "Searching in"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:245
+msgid "Adding..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258
+msgid "Searching in all sub-directories..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:269
+msgid "Path error"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:270
+msgid "The specified directory could not be processed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845
+msgid "No books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:275
+msgid "No books found"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:339
+msgid "Added"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:352
+msgid "Adding failed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353
+msgid ""
+"The add books process seems to have hung. Try restarting calibre and adding "
+"the books in smaller increments, until you find the problem book."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:368
+msgid "Duplicates found!"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:369
+msgid ""
+"Books with the same title as the following already exist in the database. "
+"Add them anyway?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:372
+msgid "Adding duplicates..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:441
+msgid "Saving..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add.py:516
+msgid "Saved"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:56
+msgid "Searching for sub-folders"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:61
+msgid "Searching for books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:73
+msgid "Looking for duplicates based on file hash"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:108
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:70
+msgid "Choose root folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:135
+msgid "Invalid root folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:136
+msgid "is not a valid root folder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/__init__.py:146
+msgid "Add books to calibre"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:26
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46
+msgid "WizardPage"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:27
+msgid "Scanning root folder for books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/scan_ui.py:28
+msgid "This may take a few minutes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:63
+msgid "Choose the location to add books from"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:64
+msgid "Select a folder on your hard disk"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/add_wizard/welcome_ui.py:65
+msgid ""
+" or
tags to prevent splitting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:120
+msgid "Delete blank lines between paragraphs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:121
+msgid "Ensure scene breaks are consistently formatted"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:122
+msgid "Replace soft scene &breaks:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:123
+msgid "Remove unnecessary hyphens"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:124
+msgid "Italicize common words and patterns"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:125
+msgid "Replace entity indents with CSS indents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/htmlz_output.py:14
+msgid "HTMLZ Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/htmlz_output_ui.py:45
+msgid "How to handle CSS"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/htmlz_output_ui.py:46
+msgid "How to handle class based CSS"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:16
+msgid "Look & Feel"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:18
+msgid "Control the look and feel of the output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:31
+msgid "Original"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:32
+msgid "Left align"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:33
+msgid "Justify text"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:138
+msgid "&Disable font size rescaling"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:139
+msgid "Base &font size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:142
+msgid "Wizard to help you choose an appropriate font size key"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:144
+msgid "Line &height:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:146
+msgid "Input character &encoding:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:147
+msgid "Remove &spacing between paragraphs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:148
+msgid "Indent size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:149
+msgid ""
+"
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:204
+#: /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
+msgid "Book Cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:160
+msgid "Change &cover image:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:161
+msgid "Browse for an image to use as the cover of this book."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:163
+msgid "Use cover from &source file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:164
+msgid "&Title: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:165
+#: /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
+msgid "&Author(s): "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:167
+msgid "Author So&rt:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168
+msgid ""
+"Change the author(s) of this book. Multiple authors should be separated by a "
+"comma"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:535
+msgid "&Publisher: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170
+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/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."
+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/search_ui.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:355
+msgid "&Series:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173
+#: /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/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
+msgid "Book "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output.py:19
+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:64
+msgid "Default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:75
+msgid "&Title for Table of Contents:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:76
+msgid "Rescale images for &Palm devices"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:77
+msgid "Use author &sort for author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:78
+msgid "Disable compression of the file contents"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:79
+msgid "Do not add Table of Contents to book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:80
+msgid "Kindle options"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:81
+msgid "Periodical masthead font:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:82
+msgid "Personal Doc tag:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:83
+msgid "Ignore &margins"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup.py:35
+msgid "Page Setup"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:121
+msgid "&Output profile:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:122
+msgid "Profile description"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:123
+msgid "&Input profile:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:124
+msgid "Margins"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:125
+msgid "&Left:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:127
+msgid "&Top:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:129
+msgid "&Right:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:131
+msgid "&Bottom:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:37
+msgid "Treat each &line as a paragraph"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:38
+msgid "Assume print formatting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output.py:14
+msgid "PDB Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:195
+msgid "&Format:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:49
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
+msgid "&Inline TOC"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:49
+msgid "Output Encoding:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input.py:12
+msgid "PDF Input"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:44
+msgid "Line &Un-Wrapping Factor:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:45
+msgid "No &Images"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output.py:15
+msgid "PDF Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:48
+msgid "&Paper Size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:49
+msgid "&Orientation:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:50
+msgid "Preserve &aspect ratio of cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pml_output.py:14
+msgid "PMLZ Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:48
+msgid "Do not reduce image size and depth"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output.py:14
+msgid "RB Output"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:133
+msgid "No formats available"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:134
+msgid "Cannot build regex using the GUI builder without a book."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:153
+msgid "Open book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:90
+msgid "Regex Builder"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:91
+msgid "Regex:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
+msgid "Test"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:93
+msgid "Occurrences:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:64
+msgid "0"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:95
+msgid "Goto:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:89
+msgid "&Previous"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:88
+msgid "&Next"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:98
+msgid "Preview"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:17
+msgid ""
+"Search\n"
+"&\n"
+"Replace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:30
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:33
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:36
+msgid "&Search Regular Expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:101
+msgid "Invalid regular expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:74
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:102
+msgid "Invalid regular expression: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:148
+msgid "First expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:153
+msgid "&Replacement Text"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:150
+msgid "Second Expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:152
+msgid "Third expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:154
+msgid ""
+">>. For example:9788842915232 >> %sHelp
\n"
+"\n"
+" \n"
+"
\n"
+"\n"
+"
%s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:255
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:314
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:341
+msgid "Replace recipe?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:256
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:315
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:342
+msgid "A custom recipe named %s already exists. Do you want to replace it?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:282
+msgid "Choose builtin recipe"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:328
+msgid "Choose a recipe file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:329
+msgid "Recipes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:369
+msgid ""
+"You will lose any unsaved changes. To save your changes, click the "
+"Add/Update recipe button. Continue?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:257
+msgid "Add custom news source"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:258
+msgid "Available user recipes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:259
+msgid "Add/Update &recipe"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:260
+msgid "&Remove recipe"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:261
+msgid "&Share recipe"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:262
+msgid "S&how recipe files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:263
+msgid "Customize &builtin recipe"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:264
+msgid "&Load recipe from file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:266
+msgid ""
+"
For most feeds, you will have to "
+"use the \"Advanced mode\" to further customize the fetch "
+"process.
Words separated by spaces are ANDed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
+msgid "&Go!"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
+msgid "Do Quick Search (you can also press the Enter key)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
+msgid "Reset Quick Search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
+msgid "Copy current search text (instead of search name)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
+msgid "Y"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:396
+msgid "Edit template"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:251
+msgid "On Device"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+msgid "Size (MB)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241
+msgid "Modified"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
+msgid "The lookup/search name is \"{0}\""
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
+msgid "This book's UUID is \"{0}\""
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
+msgid "In Library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
+#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
+msgid "Size"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+msgid "Marked for deletion"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
+msgid "Double click to edit me
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:158
+msgid "Hide column %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:163
+msgid "Sort on %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
+msgid "Ascending"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:167
+msgid "Descending"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
+msgid "Change text alignment for %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:181
+msgid "Left"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:181
+msgid "Right"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:182
+msgid "Center"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:201
+msgid "Show column"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:213
+msgid "Restore default layout"
+msgstr ""
+
+#: /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."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:52
+msgid "Configure Viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:53
+msgid "Use white background"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:54
+msgid "Hyphenate"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/config_ui.py:55
+msgid "Changes will only take effect after a restart."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:70
+msgid " - LRF Viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
+msgid "No matches for the search phrase %s were found."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:128
+msgid "LRF Viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:129
+msgid "Parsing LRF file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:130
+msgid "LRF Viewer toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:559
+msgid "Next Page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:560
+msgid "Previous Page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/store/web_store_dialog_ui.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:193
+msgid "Back"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:134
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:194
+msgid "Forward"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:135
+msgid "Next match"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:136
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:201
+msgid "Open ebook"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:137
+msgid "Configure"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:33
+msgid "Use the library located at the specified path."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:35
+msgid "Start minimized to system tray."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:37
+msgid "Log debugging information to console"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:39
+msgid "Do not check for updates"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:41
+msgid ""
+"Ignore custom plugins, useful if you installed a plugin that is preventing "
+"calibre from starting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:45
+msgid ""
+"Cause a running calibre instance, if any, to be shutdown. Note that if there "
+"are running jobs, they will be silently aborted, so use with care."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:678
+msgid "Calibre Library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
+msgid "Choose a location for your calibre e-book library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:105
+msgid "Failed to create library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:106
+msgid "Failed to create calibre library at: %r."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:109
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:195
+msgid "Choose a location for your new calibre e-book library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:164
+msgid "Initializing user interface..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:189
+msgid "Repairing failed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:190
+msgid "The database repair failed. Starting with a new empty library."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:204
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236
+msgid "Bad database location"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:205
+msgid "Bad database location %r. calibre will now quit."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:217
+msgid "Corrupted database"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:218
+msgid ""
+"Your calibre database appears to be corrupted. Do you want calibre to try "
+"and repair it automatically? If you say No, a new empty calibre library will "
+"be created."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:224
+msgid ""
+"Repairing database. This can take a very long time for a large collection"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237
+msgid ""
+"Bad database location %r. Will start with a new, empty calibre library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:247
+msgid "Starting %s: Loading books..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:327
+msgid "If you are sure it is not running"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:330
+msgid "may be running in the system tray, in the"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:332
+msgid "upper right region of the screen."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:334
+msgid "lower right region of the screen."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:337
+msgid "try rebooting your computer."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:339
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:353
+msgid "try deleting the file"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:342
+msgid "Cannot Start "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:343
+msgid "%s is already running."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:25
+msgid ""
+"Redirect console output to a dialog window (both stdout and stderr). Useful "
+"on windows where GUI apps do not have a output streams."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:113
+msgid "&Preferences"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:114
+msgid "&Quit"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:138
+msgid "Unhandled exception"
+msgstr ""
+
+#: /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: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: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:492
+msgid ""
+"Last modified: %s\n"
+"\n"
+"Double click to view"
+msgstr ""
+
+#: /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:524
+msgid "Add a format to this book"
+msgstr ""
+
+#: /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: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:797
+msgid "Could not change cover as the image is invalid."
+msgstr ""
+
+#: /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: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: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: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: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:1050
+msgid "&Publisher:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
+msgid "Clear date"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
+msgid "Publishe&d:"
+msgstr ""
+
+#: /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_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_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_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_download.py:61
+msgid "Download only &metadata"
+msgstr ""
+
+#: /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_download.py:69
+msgid "&Configure download"
+msgstr ""
+
+#: /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_download.py:99
+msgid "Download metadata for %d books"
+msgstr ""
+
+#: /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_download.py:111
+msgid "(Failed metadata)"
+msgstr ""
+
+#: /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_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:115
+msgid "Downloaded metadata fields"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:51
+#: /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:55
+#: /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:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
+msgid "Edit Metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
+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:112
+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:118
+msgid "Set author sort from author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
+msgid "Set author from author sort"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
+msgid "Swap the author and title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
+msgid "Remove unused series (Series that have no books)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
+msgid "&Download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
+msgid "Change how calibre downloads metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
+msgid "Could not read cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
+msgid "Could not read cover from %s format"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
+msgid "The cover in the %s format is invalid"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
+msgid "Permission denied"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
+msgid "Could not open %s. Is it being used by another program?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
+msgid "Save changes and edit the metadata of %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
+msgid "Change cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
+msgid "Co&mments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
+msgid "&Metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
+msgid "&Cover and formats"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
+msgid "C&ustom metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
+msgid "&Comments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
+msgid "Basic metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:132
+msgid "Has cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:132
+msgid "Has summary"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:189
+msgid ""
+"The has cover indication is not fully\n"
+"reliable. Sometimes results marked as not\n"
+"having a cover will find a cover in the download\n"
+"cover stage, and vice versa."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:258
+msgid "See at"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:393
+msgid "calibre is downloading metadata from: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:415
+msgid "Please wait"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:444
+msgid "Query: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:463
+msgid "Failed to download metadata. Click Show Details to see details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:472
+msgid ""
+"Failed to find any books that match your search. Try making the search "
+"less specific. For example, use only the author's last name and a "
+"single distinctive word from the title.\n"
+"
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:208
+msgid "Use MMM yyyy for month + year, yyyy for year only"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:209
+msgid "Default: dd MMM yyyy."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:210
+msgid "Format for &dates"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:211
+msgid "&Template"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:212
+msgid "Field template. Uses the same syntax as save templates."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:213
+msgid "Similar to save templates. For example, {title} {isbn}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:224
+msgid "Default: (nothing)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:215
+msgid "&Sort/search column by"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:216
+msgid "How this column should handled in the GUI when sorting and searching"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:217
+msgid "If checked, this column will appear in the tags browser as a category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:218
+msgid "Show in tags browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:219
+msgid "Values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:220
+msgid ""
+"A comma-separated list of permitted values. The empty value is always\n"
+"included, and is the default. For example, the list 'one,two,three' has\n"
+"four values, the first of them being the empty value."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223
+msgid "The empty string is always the first value"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_debug.py:21
+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 ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/device_debug.py:24
+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 "
+"automatically sent for downloaded news to all email addresses that have Auto-"
+"send checked."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:67
+msgid "Add an email address to which to send books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:68
+msgid "&Add email"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:69
+msgid "Make &default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:70
+msgid "&Remove email"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
+msgid "Auto send"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
+msgid "Email"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:32
+msgid "Formats to email. The first matching format will be sent."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:33
+msgid ""
+"Subject of the email to use when sending. When left blank the title will be "
+"used for the subject. Also, the same templates used for \"Save to disk\" "
+"such as {title} and {author_sort} can be used here."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:37
+msgid ""
+"If checked, downloaded news will be automatically mailed
to this email "
+"address (provided it is in one of the listed formats)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:115
+msgid "new email address"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:103
+msgid "Narrow"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:103
+msgid "Wide"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:128
+msgid "Off"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:128
+msgid "Small"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:129
+msgid "Large"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:129
+msgid "Medium"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:132
+msgid "Always"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:132
+msgid "Automatic"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:133
+msgid "Never"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:136
+msgid "By first letter"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:136
+msgid "Disabled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:137
+msgid "Partitioned"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:198
+msgid "User Interface &layout (needs restart):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:199
+msgid "Choose &language (requires restart):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:200
+msgid "Enable system &tray icon (needs restart)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:201
+msgid "Disable all animations. Useful if you have a slow/old computer."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:202
+msgid "Disable &animations"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:203
+msgid "Disable ¬ifications in system tray"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:204
+msgid "Show &splash screen at startup"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:205
+msgid "&Toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:206
+msgid "&Icon size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:207
+msgid "Show &text under icons:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:208
+msgid "Interface font:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:209
+msgid "Change &font (needs restart)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:210
+msgid "Main Interface"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:211
+msgid "Select displayed metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:212
+msgid "Move up"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:213
+msgid "Move down"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:214
+msgid "Use &Roman numerals for series"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:215
+msgid ""
+"Note that comments will always be displayed at the end, regardless of "
+"the position you assign here."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:217
+msgid "Tags browser category &partitioning method:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:218
+msgid ""
+"Choose how tag browser subcategories are displayed when\n"
+"there are more items than the limit. Select by first\n"
+"letter to see an A, B, C list. Choose partitioned to\n"
+"have a list of fixed-sized groups. Set to disabled\n"
+"if you never want subcategories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:223
+msgid "&Collapse when more items than:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:224
+msgid ""
+"If a Tag Browser category has more than this number of items, it is divided\n"
+"up into sub-categories. If the partition method is set to disable, this "
+"value is ignored."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:226
+msgid "Show &average ratings in the tags browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:227
+msgid "Categories with &hierarchical items:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:228
+msgid ""
+"A comma-separated list of columns in which items containing\n"
+"periods are displayed in the tag browser trees. For example, if\n"
+"this box contains 'tags' then tags of the form 'Mystery.English'\n"
+"and 'Mystery.Thriller' will be displayed with English and Thriller\n"
+"both under 'Mystery'. If 'tags' is not in this box,\n"
+"then the tags will be displayed each on their own line."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:235
+msgid "Show cover &browser in a separate window (needs restart)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:236
+msgid "&Number of covers to show in browse mode (needs restart):"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks_ui.py:96
+msgid "&Apply"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:237
+msgid "Restore &defaults"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:238
+msgid "Save changes"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:239
+msgid "Cancel and return to overview"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:295
+msgid "Restoring to defaults not supported for"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:330
+msgid ""
+"Some of the changes you made require a restart. Please restart calibre as "
+"soon as possible."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:333
+msgid ""
+"The changes you have made require calibre be restarted immediately. You will "
+"not be allowed set any more preferences, until you restart."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:338
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:127
+msgid "Restart needed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:47
+msgid "Source"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:49
+msgid "Cover priority"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+msgid "This source is configured and ready to go"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
+msgid "This source needs configuration"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
+msgid "Published date"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
+msgid "Configure %s
%s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+msgid "No source selected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
+msgid "No source selected, cannot configure."
+msgstr ""
+
+#: /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: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: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:114
+msgid "Configure selected source"
+msgstr ""
+
+#: /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: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:120
+msgid "Swap author names from FN LN to LN, FN"
+msgstr ""
+
+#: /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:122
+msgid "Max. &time to wait after first match is found:"
+msgstr ""
+
+#: /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:124
+msgid "Max. time to wait after first &cover is found:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:126
+msgid ""
+"allseries with the value series, "
+"#myseries, #myseries2, then the query allseries:adhoc "
+"will find 'adhoc' in any of the columns series, "
+"#myseries, and #myseries2.MySearch and mysearch "
+"are the same term.allseries example, the automatically-generated user category "
+"will contain all the series mentioned in series, "
+"#myseries, and #myseries2. This can be useful to "
+"check for duplicates, to find which column contains a particular item, or to "
+"have hierarchical categories (categories that contain categories)."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:116
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:128
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:119
+msgid "Grouped Search Terms"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:97
+msgid "The search term cannot be blank"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:107
+msgid "That name is already used for a column or grouped search term"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:111
+msgid "That name is already used for user category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:117
+msgid "The value box cannot be empty"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search.py:129
+msgid "The empty grouped search term cannot be deleted"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:110
+msgid "Search as you &type"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:111
+msgid ""
+"&Highlight search results instead of restricting the book list to the results"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:112
+msgid "What to search by default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:113
+msgid ""
+"When you enter a search term without a prefix, by default calibre will "
+"search all metadata for matches. For example, entering, \"asimov\" will "
+"search not just authors but title/tags/series/comments/etc. Use these "
+"options if you would like to change this behavior."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:114
+msgid "&Limit the searched metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:115
+msgid "&Columns that non-prefixed searches are limited to:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:116
+msgid ""
+"Note that this option affects all searches, including saved searches and "
+"restrictions. Therefore, if you use this option, it is best to ensure that "
+"you always use prefixes in your saved searches. For example, use "
+"\"series:Foundation\" rather than just \"Foundation\" in a saved search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:117
+msgid ""
+"Clear search histories from all over calibre. Including the book list, e-"
+"book viewer, fetch news dialog, etc."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:118
+msgid "Clear search &histories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:120
+msgid "&Names:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:121
+msgid ""
+"Contains the names of the currently-defined group search terms.\n"
+"Create a new name by entering it into the empty box, then\n"
+"pressing Save. Rename a search term by selecting it then\n"
+"changing the name and pressing Save. Change the value of\n"
+"a search term by changing the value box then pressing Save."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:126
+msgid "Delete the current search term"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:128
+msgid ""
+"Save the current search term. You can rename a search term by\n"
+"changing the name then pressing Save. You can change the value\n"
+"of a search term by changing the value box then pressing Save."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:131
+msgid "&Save"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:132
+msgid "Make &user categories from:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/search_ui.py:133
+msgid ""
+"Enter the names of any grouped search terms you wish\n"
+"to be shown as user categories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending_ui.py:70
+msgid "Manual management"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending.py:29
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending_ui.py:71
+msgid "Only on send"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending.py:30
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending_ui.py:72
+msgid "Automatic management"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending_ui.py:69
+msgid "Metadata &management:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/sending_ui.py:73
+msgid ""
+"evaluate(self, formatter, kwargs, mi, locals, your "
+"parameters)\n"
+" → returning a unicode string\n"
+"
\n"
+" \n"
+" name: my_ifempty\n"
+" arg count: 1\n"
+" doc: my_ifempty(val) -- return val if it is not empty, otherwise the "
+"string 'EMPTY'\n"
+" program code:\n"
+" def evaluate(self, formatter, kwargs, mi, locals, val):\n"
+" if val:\n"
+" return val\n"
+" else:\n"
+" return 'EMPTY'
\n"
+" This function can be called in any of the three template program "
+"modes:\n"
+" \n"
+"
\n"
+" Quitting may cause corruption on the device.
\n"
+" Are you sure you want to quit?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:628
+msgid "Active jobs"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:696
+msgid ""
+"will keep running in the system tray. To close it, choose Quit in the "
+"context menu of the system tray."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/update.py:53
+msgid ""
+"%s has been updated to version %s. See the new features."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/update.py:58
+msgid "Update available!"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/update.py:63
+msgid "Show this notification for future updates"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/update.py:68
+msgid "&Get update"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:43
+msgid "Edit bookmark"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:43
+msgid "New title for bookmark:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:52
+msgid "Export Bookmarks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:54
+msgid "Saved Bookmarks (*.pickle)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:62
+msgid "Import Bookmarks"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:62
+msgid "Pickled Bookmarks (*.pickle)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:61
+msgid "Bookmark Manager"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:62
+msgid "Actions"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:63
+msgid "Edit"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:65
+msgid "Reset"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:66
+msgid "Export"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:67
+msgid "Import"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:178
+msgid "Configure Ebook viewer"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:179
+msgid "&Font options"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:180
+msgid "Se&rif family:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:181
+msgid "&Sans family:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:182
+msgid "&Monospace family:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:183
+msgid "&Default font size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:184
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:201
+msgid " px"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:185
+msgid "Monospace &font size:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:187
+msgid "S&tandard font:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:188
+msgid "Serif"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:189
+msgid "Sans-serif"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:190
+msgid "Monospace"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:191
+msgid "Remember last used &window size"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:192
+msgid "Remember the ¤t page when quitting"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:193
+msgid "H&yphenate (break line in the middle of large words)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:194
+msgid ""
+"The default language to use for hyphenation rules. If the book does not "
+"specify a language, this will be used."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:195
+msgid "Default &language for hyphenation:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:196
+msgid "&Resize images larger than the viewer window (needs restart)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:197
+msgid "Page flip &duration:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:198
+msgid "disabled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:200
+msgid "Mouse &wheel flips pages"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:202
+msgid "Maximum &view width:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:203
+msgid "&General"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:204
+msgid "Double click to change a keyboard shortcut"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:205
+msgid "&Keyboard shortcuts"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:206
+msgid ""
+"
Error: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:582
+msgid "Could not move library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:657
+msgid "Select location for books"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:671
+msgid ""
+"You must choose an empty folder for the calibre library. %s is not empty."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:745
+msgid "welcome wizard"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:47
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:47
+msgid "Welcome to calibre"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:56
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:56
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:48
+msgid "The one stop solution to all your e-book needs."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:57
+msgid "&Manufacturers"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:58
+msgid "&Devices"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:49
+msgid ""
+"Congratulations!
You have successfully setup calibre. Press the %s "
+"button to apply your settings."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:50
+msgid ""
+"Demo videos
Videos demonstrating the various features of calibre are "
+"available online."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:51
+msgid ""
+"User Manual
A User Manual is also available online."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:49
+msgid ""
+"
Set it to your email address"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:126
+msgid ""
+"
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:169
+msgid "TAGS: %s
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:174
+msgid "SERIES: %s [%s]
"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:267
+msgid "Books in your library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:273
+msgid "By "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:274
+msgid "Books sorted by "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:34
+msgid "%sUsage%s: %s\n"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:85
+msgid "Created by "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:86
+msgid ""
+"Whenever you pass arguments to %prog that have spaces in them, enclose the "
+"arguments in quotation marks."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:375
+msgid "Path to the database in which books are stored"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:377
+msgid "Pattern to guess metadata from filenames"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:379
+msgid "Access key for isbndb.com"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:381
+msgid "Default timeout for network operations (seconds)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:383
+msgid "Path to directory in which your library of books is stored"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:385
+msgid "The language in which to display the user interface"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:387
+msgid "The default output format for ebook conversions."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:391
+msgid "Ordered list of formats to prefer for input."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:393
+msgid "Read metadata from files"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:395
+msgid ""
+"The priority of worker processes. A higher priority means they run faster "
+"and consume more resources. Most tasks like conversion/news download/adding "
+"books/etc. are affected by this setting."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:400
+msgid "Swap author first and last names when reading metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:402
+msgid "Add new formats to existing book records"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:404
+msgid "Tags to apply to books added to the library"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:408
+msgid "List of named saved searches"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:409
+msgid "User-created tag browser categories"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:411
+msgid "How and when calibre updates metadata on the device."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:413
+msgid ""
+"When searching for text without using lookup prefixes, as for example, Red "
+"instead of title:Red, limit the columns searched to those named below."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/config_base.py:418
+msgid ""
+"Choose columns to be searched when not using prefixes, as for example, when "
+"searching for Redd instead of title:Red. Enter a list of search/lookup names "
+"separated by commas. Only takes effect if you set the option to limit search "
+"columns above."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:27
+msgid "failed to scan program. Invalid input {0}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:32
+msgid " near "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:38
+msgid "end of program"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:75
+msgid "syntax error - program ends before EOF"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:101
+msgid "unknown id "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:107
+msgid "unknown function {0}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:126
+msgid "missing closing parenthesis"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:145
+msgid "expression is not function or constant"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:179
+msgid "format: type {0} requires an integer value, got {1}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:185
+msgid "format: type {0} requires a decimal (float) value, got {1}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:296
+msgid "%s: unknown function"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter.py:343
+msgid "No such variable "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:58
+msgid "No documentation provided"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:79
+msgid "Exception "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:97
+msgid ""
+"strcmp(x, y, lt, eq, gt) -- does a case-insensitive comparison of x and y as "
+"strings. Returns lt if x < y. Returns eq if x == y. Otherwise returns gt."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:112
+msgid ""
+"cmp(x, y, lt, eq, gt) -- compares x and y after converting both to numbers. "
+"Returns lt if x < y. Returns eq if x == y. Otherwise returns gt."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:127
+msgid ""
+"strcat(a, b, ...) -- can take any number of arguments. Returns a string "
+"formed by concatenating all the arguments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:140
+msgid ""
+"add(x, y) -- returns x + y. Throws an exception if either x or y are not "
+"numbers."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:150
+msgid ""
+"subtract(x, y) -- returns x - y. Throws an exception if either x or y are "
+"not numbers."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:160
+msgid ""
+"multiply(x, y) -- returns x * y. Throws an exception if either x or y are "
+"not numbers."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:170
+msgid ""
+"divide(x, y) -- returns x / y. Throws an exception if either x or y are not "
+"numbers."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:180
+msgid ""
+"template(x) -- evaluates x as a template. The evaluation is done in its own "
+"context, meaning that variables are not shared between the caller and the "
+"template evaluation. Because the { and } characters are special, you must "
+"use [[ for the { character and ]] for the } character; they are converted "
+"automatically. For example, template('[[title_sort]]') will evaluate the "
+"template {title_sort} and return its value."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:195
+msgid ""
+"eval(template) -- evaluates the template, passing the local variables (those "
+"'assign'ed to) instead of the book metadata. This permits using the "
+"template processor to construct complex results from local variables."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:208
+msgid ""
+"assign(id, val) -- assigns val to id, then returns val. id must be an "
+"identifier, not an expression"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:218
+msgid ""
+"print(a, b, ...) -- prints the arguments to standard output. Unless you "
+"start calibre from the command line (calibre-debug -g), the output will go "
+"to a black hole."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:229
+msgid "field(name) -- returns the metadata field named by name"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:237
+msgid ""
+"raw_field(name) -- returns the metadata field named by name without applying "
+"any formatting."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:246
+msgid ""
+"substr(str, start, end) -- returns the start'th through the end'th "
+"characters of str. The first character in str is the zero'th character. If "
+"end is negative, then it indicates that many characters counting from the "
+"right. If end is zero, then it indicates the last character. For example, "
+"substr('12345', 1, 0) returns '2345', and substr('12345', 1, -1) returns "
+"'234'."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:259
+msgid ""
+"lookup(val, pattern, field, pattern, field, ..., else_field) -- like switch, "
+"except the arguments are field (metadata) names, not text. The value of the "
+"appropriate field will be fetched and used. Note that because composite "
+"columns are fields, you can use this function in one composite field to use "
+"the value of some other composite field. This is extremely useful when "
+"constructing variable save paths"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:274
+msgid "lookup requires either 2 or an odd number of arguments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:286
+msgid ""
+"test(val, text if not empty, text if empty) -- return `text if not empty` if "
+"the field is not empty, otherwise return `text if empty`"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:298
+msgid ""
+"contains(val, pattern, text if match, text if not match) -- checks if field "
+"contains matches for the regular expression `pattern`. Returns `text if "
+"match` if matches are found, otherwise it returns `text if no match`"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:313
+msgid ""
+"switch(val, pattern, value, pattern, value, ..., else_value) -- for each "
+"`pattern, value` pair, checks if the field matches the regular expression "
+"`pattern` and if so, returns that `value`. If no pattern matches, then "
+"else_value is returned. You can have as many `pattern, value` pairs as you "
+"want"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:321
+msgid "switch requires an odd number of arguments"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:333
+msgid ""
+"re(val, pattern, replacement) -- return the field after applying the regular "
+"expression. All instances of `pattern` are replaced with `replacement`. As "
+"in all of calibre, these are python-compatible regular expressions"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:344
+msgid ""
+"ifempty(val, text if empty) -- return val if val is not empty, otherwise "
+"return `text if empty`"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:356
+msgid ""
+"shorten(val, left chars, middle text, right chars) -- Return a shortened "
+"version of the field, consisting of `left chars` characters from the "
+"beginning of the field, followed by `middle text`, followed by `right chars` "
+"characters from the end of the string. `Left chars` and `right chars` must "
+"be integers. For example, assume the title of the book is `Ancient English "
+"Laws in the Times of Ivanhoe`, and you want it to fit in a space of at most "
+"15 characters. If you use {title:shorten(9,-,5)}, the result will be "
+"`Ancient E-nhoe`. If the field's length is less than left chars + right "
+"chars + the length of `middle text`, then the field will be used intact. For "
+"example, the title `The Dome` would not be changed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:381
+msgid ""
+"count(val, separator) -- interprets the value as a list of items separated "
+"by `separator`, returning the number of items in the list. Most lists use a "
+"comma as the separator, but authors uses an ampersand. Examples: "
+"{tags:count(,)}, {authors:count(&)}"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:392
+msgid ""
+"list_item(val, index, separator) -- interpret the value as a list of items "
+"separated by `separator`, returning the `index`th item. The first item is "
+"number zero. The last item can be returned using `list_item(-1,separator)`. "
+"If the item is not in the list, then the empty value is returned. The "
+"separator has the same meaning as in the count function."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:412
+msgid ""
+"select(val, key) -- interpret the value as a comma-separated list of items, "
+"with the items being \"id:value\". Find the pair with theid equal to key, "
+"and return the corresponding value."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:429
+msgid ""
+"sublist(val, start_index, end_index, separator) -- interpret the value as a "
+"list of items separated by `separator`, returning a new list made from the "
+"`start_index`th to the `end_index`th item. The first item is number zero. If "
+"an index is negative, then it counts from the end of the list. As a special "
+"case, an end_index of zero is assumed to be the length of the list. Examples "
+"using basic template mode and assuming that the tags column (which is comma-"
+"separated) contains \"A, B, C\": {tags:sublist(0,1,\\,)} returns \"A\". "
+"{tags:sublist(-1,0,\\,)} returns \"C\". {tags:sublist(0,-1,\\,)} returns "
+"\"A, B\"."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:458
+msgid ""
+"subitems(val, start_index, end_index) -- This function is used to break "
+"apart lists of items such as genres. It interprets the value as a comma-"
+"separated list of items, where each item is a period-separated list. Returns "
+"a new list made by first finding all the period-separated items, then for "
+"each such item extracting the start_index`th to the `end_index`th "
+"components, then combining the results back together. The first component in "
+"a period-separated list has an index of zero. If an index is negative, then "
+"it counts from the end of the list. As a special case, an end_index of zero "
+"is assumed to be the length of the list. Example using basic template mode "
+"and assuming a #genre value of \"A.B.C\": {#genre:subitems(0,1)} returns "
+"\"A\". {#genre:subitems(0,2)} returns \"A.B\". {#genre:subitems(1,0)} "
+"returns \"B.C\". Assuming a #genre value of \"A.B.C, D.E.F\", "
+"{#genre:subitems(0,1)} returns \"A, D\". {#genre:subitems(0,2)} returns "
+"\"A.B, D.E\""
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:495
+msgid ""
+"format_date(val, format_string) -- format the value, which must be a date "
+"field, using the format_string, returning a string. The formatting codes "
+"are: d : the day as number without a leading zero (1 to 31) dd : the "
+"day as number with a leading zero (01 to 31) ddd : the abbreviated "
+"localized day name (e.g. \"Mon\" to \"Sun\"). dddd : the long localized day "
+"name (e.g. \"Monday\" to \"Sunday\"). M : the month as number without a "
+"leading zero (1 to 12). MM : the month as number with a leading zero (01 "
+"to 12) MMM : the abbreviated localized month name (e.g. \"Jan\" to "
+"\"Dec\"). MMMM : the long localized month name (e.g. \"January\" to "
+"\"December\"). yy : the year as two digit number (00 to 99). yyyy : the "
+"year as four digit number. iso : the date with time and timezone. Must be "
+"the only format present"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:523
+msgid "uppercase(val) -- return value of the field in upper case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:531
+msgid "lowercase(val) -- return value of the field in lower case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:539
+msgid "titlecase(val) -- return value of the field in title case"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:547
+msgid "capitalize(val) -- return value of the field capitalized"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:555
+msgid "booksize() -- return value of the field capitalized"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:43
+msgid "Waiting..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:52
+msgid "Stopped"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
+msgid "Finished"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:76
+msgid "Working..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:95
+msgid "Brazilian Portuguese"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:96
+msgid "English (UK)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:97
+msgid "Simplified Chinese"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:98
+msgid "Chinese (HK)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:99
+msgid "Traditional Chinese"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:100
+msgid "English"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:101
+msgid "English (Australia)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:102
+msgid "English (New Zealand)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:103
+msgid "English (Canada)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:104
+msgid "English (India)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:105
+msgid "English (Thailand)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:106
+msgid "English (Cyprus)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107
+msgid "English (Czechoslovakia)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108
+msgid "English (Pakistan)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:109
+msgid "English (Croatia)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:110
+msgid "English (Indonesia)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:111
+msgid "English (Israel)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:112
+msgid "English (Singapore)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:113
+msgid "English (Yemen)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:114
+msgid "English (Ireland)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:115
+msgid "English (China)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:116
+msgid "Spanish (Paraguay)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:117
+msgid "Spanish (Uruguay)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:118
+msgid "Spanish (Argentina)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:119
+msgid "Spanish (Mexico)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:120
+msgid "Spanish (Cuba)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:121
+msgid "Spanish (Chile)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:122
+msgid "Spanish (Ecuador)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:123
+msgid "Spanish (Honduras)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:124
+msgid "Spanish (Venezuela)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:125
+msgid "Spanish (Bolivia)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:126
+msgid "Spanish (Nicaragua)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:127
+msgid "German (AT)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:128
+msgid "French (BE)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:129
+msgid "Dutch (NL)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/localization.py:130
+msgid "Dutch (BE)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/console.py:56
+msgid "Choose theme (needs restart)"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/console.py:109
+msgid "ERROR: Unhandled exception"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/console.py:188
+msgid "No interpreter"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/console.py:189
+msgid "No active interpreter found. Try restarting the console"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/console.py:203
+msgid "Interpreter died"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/console.py:204
+msgid ""
+"Interpreter dies while excuting a command. To see the command, click Show "
+"details"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/main.py:20
+msgid "Welcome to"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/main.py:41
+msgid " console "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/main.py:51
+msgid "Code is running"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/pyconsole/main.py:58
+msgid "Restart console"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/sftp.py:53
+msgid "URL must have the scheme sftp"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/sftp.py:57
+msgid "host must be of the form user@hostname"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/sftp.py:68
+msgid "Failed to negotiate SSH session: "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/sftp.py:71
+msgid "Failed to authenticate with server: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/utils/smtp.py:249
+msgid "Control email delivery"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:120
+msgid "Unknown section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:142
+msgid "Unknown feed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:160
+#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:187
+msgid "Untitled article"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:22
+msgid "Download periodical content from the internet"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:37
+msgid ""
+"Useful for recipe development. Forces max_articles_per_feed to 2 and "
+"downloads at most 2 feeds."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:40
+msgid "Username for sites that require a login to access content."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:43
+msgid "Password for sites that require a login to access content."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:47
+msgid ""
+"Do not download latest version of builtin recipes from the calibre server"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:47
+msgid "Unknown News Source"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:630
+msgid "The \"%s\" recipe needs a username and password."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:736
+msgid "Download finished"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:738
+msgid "Failed to download the following articles:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:744
+msgid "Failed to download parts of the following articles:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:746
+msgid " from "
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:748
+msgid "\tFailed links:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:843
+msgid "Could not fetch article."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:845
+msgid "The debug traceback is available earlier in this log"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:847
+msgid "Run with -vv to see the reason"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:870
+msgid "Fetching feeds..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:875
+msgid "Got feeds from index page"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:884
+msgid "Trying to download cover..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:886
+msgid "Generating masthead..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:966
+msgid "Starting download [%d thread(s)]..."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:982
+msgid "Feeds downloaded to %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:991
+msgid "Could not download cover: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000
+msgid "Downloading cover from %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1046
+msgid "Masthead image downloaded"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1214
+msgid "Untitled Article"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1285
+msgid "Article downloaded: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1296
+msgid "Article download failed: %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1313
+msgid "Fetching feed"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1460
+msgid ""
+"Failed to log in, check your username and password for the calibre "
+"Periodicals service."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1475
+msgid ""
+"You do not have permission to download this issue. Either your subscription "
+"has expired or you have exceeded the maximum allowed downloads for today."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:46
+msgid "You"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:75
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:202
+msgid "Scheduled"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:86
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:203
+msgid "Custom"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:118
+msgid "Next section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:121
+msgid "Main menu"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:125
+msgid "Previous section"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:214
+msgid "Section Menu"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:217
+msgid "Main Menu"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:303
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:393
+msgid "Sections"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:390
+msgid "Articles"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:476
+msgid ""
+"%prog URL\n"
+"\n"
+"Where URL is for example http://google.com"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:479
+msgid "Base directory into which URL is saved. Default is %default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:482
+msgid ""
+"Timeout in seconds to wait for a response from the server. Default: %default "
+"s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:485
+msgid ""
+"Maximum number of levels to recurse i.e. depth of links to follow. Default "
+"%default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:488
+msgid ""
+"The maximum number of files to download. This only applies to files from tags. Default is %default"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:490
+msgid ""
+"Minimum interval in seconds between consecutive fetches. Default is %default "
+"s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:492
+msgid ""
+"The character encoding for the websites you are trying to download. The "
+"default is to try and guess the encoding."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:494
+msgid ""
+"Only links that match this regular expression will be followed. This option "
+"can be specified multiple times, in which case as long as a link matches any "
+"one regexp, it will be followed. By default all links are followed."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:496
+msgid ""
+"Any link that matches this regular expression will be ignored. This option "
+"can be specified multiple times, in which case as long as any regexp matches "
+"a link, it will be ignored.By default, no links are ignored. If both filter "
+"regexp and match regexp are specified, then filter regexp is applied first."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:498
+msgid "Do not download CSS stylesheets."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:12
+msgid "Auto increment series index"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:13
+msgid ""
+"The algorithm used to assign a new book in an existing series a series "
+"number.\n"
+"New series numbers assigned using this tweak are always integer values, "
+"except\n"
+"if a constant non-integer is specified.\n"
+"Possible values are:\n"
+"next - First available integer larger than the largest existing number\n"
+"first_free - First available integer larger than 0\n"
+"next_free - First available integer larger than the smallest existing "
+"number\n"
+"last_free - First available integer smaller than the largest existing "
+"number\n"
+"Return largest existing + 1 if no free number is found\n"
+"const - Assign the number 1 always\n"
+"a number - Assign that number always. The number is not in quotes. Note "
+"that\n"
+"0.0 can be used here.\n"
+"Examples:\n"
+"series_index_auto_increment = 'next'\n"
+"series_index_auto_increment = 'next_free'\n"
+"series_index_auto_increment = 16.5"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:31
+msgid "Add separator after completing an author name"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:32
+msgid ""
+"Should the completion separator be append\n"
+"to the end of the completed text to\n"
+"automatically begin a new completion operation\n"
+"for authors.\n"
+"Can be either True or False"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:40
+msgid "Author sort name algorithm"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:41
+msgid ""
+"The algorithm used to copy author to author_sort\n"
+"Possible values are:\n"
+"invert: use \"fn ln\" -> \"ln, fn\"\n"
+"copy : copy author to author_sort without modification\n"
+"comma : use 'copy' if there is a ',' in the name, otherwise use 'invert'\n"
+"nocomma : \"fn ln\" -> \"ln fn\" (without the comma)\n"
+"When this tweak is changed, the author_sort values stored with each author\n"
+"must be recomputed by right-clicking on an author in the left-hand tags "
+"pane,\n"
+"selecting 'manage authors', and pressing 'Recalculate all author sort "
+"values'.\n"
+"The author name suffixes are words that are ignored when they occur at the\n"
+"end of an author name. The case of the suffix is ignored and trailing\n"
+"periods are automatically handled."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:58
+msgid "Use author sort in Tag Browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:59
+msgid ""
+"Set which author field to display in the tags pane (the list of authors,\n"
+"series, publishers etc on the left hand side). The choices are author and\n"
+"author_sort. This tweak affects only what is displayed under the authors\n"
+"category in the tags pane and content server. Please note that if you set "
+"this\n"
+"to author_sort, it is very possible to see duplicate names in the list "
+"because\n"
+"although it is guaranteed that author names are unique, there is no such\n"
+"guarantee for author_sort values. Showing duplicates won't break anything, "
+"but\n"
+"it could lead to some confusion. When using 'author_sort', the tooltip will\n"
+"show the author's name.\n"
+"Examples:\n"
+"categories_use_field_for_author_name = 'author'\n"
+"categories_use_field_for_author_name = 'author_sort'"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:73
+msgid "Control partitioning of Tag Browser"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:74
+msgid ""
+"When partitioning the tags browser, the format of the subcategory label is\n"
+"controlled by a template: categories_collapsed_name_template if sorting by\n"
+"name, categories_collapsed_rating_template if sorting by average rating, "
+"and\n"
+"categories_collapsed_popularity_template if sorting by popularity. There "
+"are\n"
+"two variables available to the template: first and last. The variable "
+"'first'\n"
+"is the initial item in the subcategory, and the variable 'last' is the "
+"final\n"
+"item in the subcategory. Both variables are 'objects'; they each have "
+"multiple\n"
+"values that are obtained by using a suffix. For example, first.name for an\n"
+"author category will be the name of the author. The sub-values available "
+"are:\n"
+"name: the printable name of the item\n"
+"count: the number of books that references this item\n"
+"avg_rating: the average rating of all the books referencing this item\n"
+"sort: the sort value. For authors, this is the author_sort for that author\n"
+"category: the category (e.g., authors, series) that the item is in.\n"
+"Note that the \"r'\" in front of the { is necessary if there are "
+"backslashes\n"
+"(\\ characters) in the template. It doesn't hurt anything to leave it there\n"
+"even if there aren't any backslashes."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:96
+msgid "Specify columns to sort the booklist by on startup"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:97
+msgid ""
+"Provide a set of columns to be sorted on when calibre starts\n"
+"The argument is None if saved sort history is to be used\n"
+"otherwise it is a list of column,order pairs. Column is the\n"
+"lookup/search name, found using the tooltip for the column\n"
+"Order is 0 for ascending, 1 for descending\n"
+"For example, set it to [('authors',0),('title',0)] to sort by\n"
+"title within authors."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:106
+msgid "Control how dates are displayed"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:107
+msgid ""
+"Format to be used for publication date and the timestamp (date).\n"
+"A string controlling how the publication date is displayed in the GUI\n"
+"d the day as number without a leading zero (1 to 31)\n"
+"dd the day as number with a leading zero (01 to 31)\n"
+"ddd the abbreviated localized day name (e.g. 'Mon' to 'Sun').\n"
+"dddd the long localized day name (e.g. 'Monday' to 'Qt::Sunday').\n"
+"M the month as number without a leading zero (1-12)\n"
+"MM the month as number with a leading zero (01-12)\n"
+"MMM the abbreviated localized month name (e.g. 'Jan' to 'Dec').\n"
+"MMMM the long localized month name (e.g. 'January' to 'December').\n"
+"yy the year as two digit number (00-99)\n"
+"yyyy the year as four digit number\n"
+"For example, given the date of 9 Jan 2010, the following formats show\n"
+"MMM yyyy ==> Jan 2010 yyyy ==> 2010 dd MMM yyyy ==> 09 Jan 2010\n"
+"MM/yyyy ==> 01/2010 d/M/yy ==> 9/1/10 yy ==> 10\n"
+"publication default if not set: MMM yyyy\n"
+"timestamp default if not set: dd MMM yyyy"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:128
+msgid "Control sorting of titles and series in the library display"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:129
+msgid ""
+"Control title and series sorting in the library view. If set to\n"
+"'library_order', the title sort field will be used instead of the title.\n"
+"Unless you have manually edited the title sort field, leading articles such "
+"as\n"
+"The and A will be ignored. If set to 'strictly_alphabetic', the titles will "
+"be\n"
+"sorted as-is (sort by title instead of title sort). For example, with\n"
+"library_order, The Client will sort under 'C'. With strictly_alphabetic, "
+"the\n"
+"book will sort under 'T'.\n"
+"This flag affects Calibre's library display. It has no effect on devices. "
+"In\n"
+"addition, titles for books added before changing the flag will retain their\n"
+"order until the title is edited. Double-clicking on a title and hitting "
+"return\n"
+"without changing anything is sufficient to change the sort."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:142
+msgid "Control formatting of title and series when used in templates"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:143
+msgid ""
+"Control how title and series names are formatted when saving to "
+"disk/sending\n"
+"to device. The behavior depends on the field being processed. If processing\n"
+"title, then if this tweak is set to 'library_order', the title will be\n"
+"replaced with title_sort. If it is set to 'strictly_alphabetic', then the\n"
+"title will not be changed. If processing series, then if set to\n"
+"'library_order', articles such as 'The' and 'An' will be moved to the end. "
+"If\n"
+"set to 'strictly_alphabetic', the series will be sent without change.\n"
+"For example, if the tweak is set to library_order, \"The Lord of the "
+"Rings\"\n"
+"will become \"Lord of the Rings, The\". If the tweak is set to\n"
+"strictly_alphabetic, it would remain \"The Lord of the Rings\"."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:155
+msgid "Set the list of words considered to be \"articles\" for sort strings"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:156
+msgid ""
+"Set the list of words that are to be considered 'articles' when computing "
+"the\n"
+"title sort strings. The list is a regular expression, with the articles\n"
+"separated by 'or' bars. Comparisons are case insensitive, and that cannot "
+"be\n"
+"changed. Changes to this tweak won't have an effect until the book is "
+"modified\n"
+"in some way. If you enter an invalid pattern, it is silently ignored.\n"
+"To disable use the expression: '^$'\n"
+"Default: '^(A|The|An)\\s+'"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:165
+msgid "Specify a folder calibre should connect to at startup"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:166
+msgid ""
+"Specify a folder that calibre should connect to at startup using\n"
+"connect_to_folder. This must be a full path to the folder. If the folder "
+"does\n"
+"not exist when calibre starts, it is ignored. If there are '\\' characters "
+"in\n"
+"the path (such as in Windows paths), you must double them.\n"
+"Examples:\n"
+"auto_connect_to_folder = 'C:\\\\Users\\\\someone\\\\Desktop\\\\testlib'\n"
+"auto_connect_to_folder = '/home/dropbox/My Dropbox/someone/library'"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:175
+msgid "Specify renaming rules for SONY collections"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:176
+msgid ""
+"Specify renaming rules for sony collections. This tweak is only applicable "
+"if\n"
+"metadata management is set to automatic. Collections on Sonys are named\n"
+"depending upon whether the field is standard or custom. A collection "
+"derived\n"
+"from a standard field is named for the value in that field. For example, if\n"
+"the standard 'series' column contains the value 'Darkover', then the\n"
+"collection name is 'Darkover'. A collection derived from a custom field "
+"will\n"
+"have the name of the field added to the value. For example, if a custom "
+"series\n"
+"column named 'My Series' contains the name 'Darkover', then the collection\n"
+"will by default be named 'Darkover (My Series)'. For purposes of this\n"
+"documentation, 'Darkover' is called the value and 'My Series' is called the\n"
+"category. If two books have fields that generate the same collection name,\n"
+"then both books will be in that collection.\n"
+"This set of tweaks lets you specify for a standard or custom field how\n"
+"the collections are to be named. You can use it to add a description to a\n"
+"standard field, for example 'Foo (Tag)' instead of the 'Foo'. You can also "
+"use\n"
+"it to force multiple fields to end up in the same collection. For example, "
+"you\n"
+"could force the values in 'series', '#my_series_1', and '#my_series_2' to\n"
+"appear in collections named 'some_value (Series)', thereby merging all of "
+"the\n"
+"fields into one set of collections.\n"
+"There are two related tweaks. The first determines the category name to use\n"
+"for a metadata field. The second is a template, used to determines how the\n"
+"value and category are combined to create the collection name.\n"
+"The syntax of the first tweak, sony_collection_renaming_rules, is:\n"
+"{'field_lookup_name':'category_name_to_use', 'lookup_name':'name', ...}\n"
+"The second tweak, sony_collection_name_template, is a template. It uses the\n"
+"same template language as plugboards and save templates. This tweak "
+"controls\n"
+"how the value and category are combined together to make the collection "
+"name.\n"
+"The only two fields available are {category} and {value}. The {value} field "
+"is\n"
+"never empty. The {category} field can be empty. The default is to put the\n"
+"value first, then the category enclosed in parentheses, it is isn't empty:\n"
+"'{value} {category:|(|)}'\n"
+"Examples: The first three examples assume that the second tweak\n"
+"has not been changed.\n"
+"1: I want three series columns to be merged into one set of collections. "
+"The\n"
+"column lookup names are 'series', '#series_1' and '#series_2'. I want "
+"nothing\n"
+"in the parenthesis. The value to use in the tweak value would be:\n"
+"sony_collection_renaming_rules={'series':'', '#series_1':'', "
+"'#series_2':''}\n"
+"2: I want the word '(Series)' to appear on collections made from series, "
+"and\n"
+"the word '(Tag)' to appear on collections made from tags. Use:\n"
+"sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}\n"
+"3: I want 'series' and '#myseries' to be merged, and for the collection "
+"name\n"
+"to have '(Series)' appended. The renaming rule is:\n"
+"sony_collection_renaming_rules={'series':'Series', '#myseries':'Series'}\n"
+"4: Same as example 2, but instead of having the category name in "
+"parentheses\n"
+"and appended to the value, I want it prepended and separated by a colon, "
+"such\n"
+"as in Series: Darkover. I must change the template used to format the "
+"category name\n"
+"The resulting two tweaks are:\n"
+"sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}\n"
+"sony_collection_name_template='{category:||: }{value}'"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:228
+msgid "Specify how SONY collections are sorted"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:229
+msgid ""
+"Specify how sony collections are sorted. This tweak is only applicable if\n"
+"metadata management is set to automatic. You can indicate which metadata is "
+"to\n"
+"be used to sort on a collection-by-collection basis. The format of the "
+"tweak\n"
+"is a list of metadata fields from which collections are made, followed by "
+"the\n"
+"name of the metadata field containing the sort value.\n"
+"Example: The following indicates that collections built from pubdate and "
+"tags\n"
+"are to be sorted by the value in the custom column '#mydate', that "
+"collections\n"
+"built from 'series' are to be sorted by 'series_index', and that all other\n"
+"collections are to be sorted by title. If a collection metadata field is "
+"not\n"
+"named, then if it is a series- based collection it is sorted by series "
+"order,\n"
+"otherwise it is sorted by title order.\n"
+"[(['pubdate', 'tags'],'#mydate'), (['series'],'series_index'), (['*'], "
+"'title')]\n"
+"Note that the bracketing and parentheses are required. The syntax is\n"
+"[ ( [list of fields], sort field ) , ( [ list of fields ] , sort field ) ]\n"
+"Default: empty (no rules), so no collection attributes are named."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:247
+msgid "Control how tags are applied when copying books to another library"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:248
+msgid ""
+"Set this to True to ensure that tags in 'Tags to add when adding\n"
+"a book' are added when copying books to another library"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:253
+msgid "Set the maximum number of tags to show per book in the content server"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:257
+msgid ""
+"Set custom metadata fields that the content server will or will not display."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:258
+msgid ""
+"content_server_will_display is a list of custom fields to be displayed.\n"
+"content_server_wont_display is a list of custom fields not to be displayed.\n"
+"wont_display has priority over will_display.\n"
+"The special value '*' means all custom fields. The value [] means no "
+"entries.\n"
+"Defaults:\n"
+"content_server_will_display = ['*']\n"
+"content_server_wont_display = []\n"
+"Examples:\n"
+"To display only the custom fields #mytags and #genre:\n"
+"content_server_will_display = ['#mytags', '#genre']\n"
+"content_server_wont_display = []\n"
+"To display all fields except #mycomments:\n"
+"content_server_will_display = ['*']\n"
+"content_server_wont_display['#mycomments']"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:275
+msgid "Set the maximum number of sort 'levels'"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:276
+msgid ""
+"Set the maximum number of sort 'levels' that calibre will use to resort the\n"
+"library after certain operations such as searches or device insertion. Each\n"
+"sort level adds a performance penalty. If the database is large (thousands "
+"of\n"
+"books) the penalty might be noticeable. If you are not concerned about multi-"
+"\n"
+"level sorts, and if you are seeing a slowdown, reduce the value of this "
+"tweak."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:283
+msgid "Specify which font to use when generating a default cover"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:284
+msgid ""
+"Absolute path to .ttf font files to use as the fonts for the title, author\n"
+"and footer when generating a default cover. Useful if the default font "
+"(Liberation\n"
+"Serif) does not contain glyphs for the language of the books in your library."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:290
+msgid "Control behavior of double clicks on the book list"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:291
+msgid ""
+"Behavior of doubleclick on the books list. Choices: open_viewer, "
+"do_nothing,\n"
+"edit_cell, edit_metadata. Selecting edit_metadata has the side effect of\n"
+"disabling editing a field using a single click.\n"
+"Default: open_viewer.\n"
+"Example: doubleclick_on_library_view = 'do_nothing'"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:299
+msgid "Language to use when sorting."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:300
+msgid ""
+"Setting this tweak will force sorting to use the\n"
+"collating order for the specified language. This might be useful if you run\n"
+"calibre in English but want sorting to work in the language where you live.\n"
+"Set the tweak to the desired ISO 639-1 language code, in lower case.\n"
+"You can find the list of supported locales at\n"
+"http://publib.boulder.ibm.com/infocenter/iseries/v5r3/topic/nls/rbagsicusorts"
+"equencetables.htm\n"
+"Default: locale_for_sorting = '' -- use the language calibre displays in\n"
+"Example: locale_for_sorting = 'fr' -- sort using French rules.\n"
+"Example: locale_for_sorting = 'nb' -- sort using Norwegian rules."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:311
+msgid "Number of columns for custom metadata in the edit metadata dialog"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:312
+msgid ""
+"Set whether to use one or two columns for custom metadata when editing\n"
+"metadata one book at a time. If True, then the fields are laid out using "
+"two\n"
+"columns. If False, one column is used."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:317
+msgid "The number of seconds to wait before sending emails"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:318
+msgid ""
+"The number of seconds to wait before sending emails when using a\n"
+"public email server like gmail or hotmail. Default is: 5 minutes\n"
+"Setting it to lower may cause the server's SPAM controls to kick in,\n"
+"making email sending fail. Changes will take effect only after a restart of\n"
+"calibre."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:325
+msgid "Remove the bright yellow lines at the edges of the book list"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:326
+msgid ""
+"Control whether the bright yellow lines at the edges of book list are drawn\n"
+"when a section of the user interface is hidden. Changes will take effect\n"
+"after a restart of calibre."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:331
+msgid "The maximum width and height for covers saved in the calibre library"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:332
+msgid ""
+"All covers in the calibre library will be resized, preserving aspect ratio,\n"
+"to fit within this size. This is to prevent slowdowns caused by extremely\n"
+"large covers"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:337
+msgid "Where to send downloaded news"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:338
+msgid ""
+"When automatically sending downloaded news to a connected device, calibre\n"
+"will by default send it to the main memory. By changing this tweak, you can\n"
+"control where it is sent. Valid values are \"main\", \"carda\", \"cardb\". "
+"Note\n"
+"that if there isn't enough free space available on the location you choose,\n"
+"the files will be sent to the location with the most free space."
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:345
+msgid "What interfaces should the content server listen on"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:346
+msgid ""
+"By default, the calibre content server listens on '0.0.0.0' which means that "
+"it\n"
+"accepts IPv4 connections on all interfaces. You can change this to, for\n"
+"example, '127.0.0.1' to only listen for connections from the local machine, "
+"or\n"
+"to '::' to listen to all incoming IPv6 and IPv4 connections (this may not\n"
+"work on all operating systems)"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:353
+msgid "Unified toolbar on OS X"
+msgstr ""
+
+#: /home/kovid/work/calibre/resources/default_tweaks.py:354
+msgid ""
+"If you enable this option and restart calibre, the toolbar will be "
+"'unified'\n"
+"with the titlebar as is normal for OS X applications. However, doing this "
+"has\n"
+"various bugs, for instance the minimum width of the toolbar becomes twice\n"
+"what it should be and it causes other random bugs on some systems, so turn "
+"it\n"
+"on at your own risk!"
+msgstr ""
diff --git a/src/calibre/translations/eu.po b/src/calibre/translations/eu.po
index 040160cd65..69ab1efa93 100644
--- a/src/calibre/translations/eu.po
+++ b/src/calibre/translations/eu.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME
"
msgid "Create a catalog of the books in your calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Sortzen %s katalogoa..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Katalogoa sortu egin da."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Esportatu katalogoaren direktorioa"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Aukeratu helburua honentzat: %s.%s"
@@ -4605,17 +4671,17 @@ msgid "Switch/create library..."
msgstr "Aldatu/sortu liburutegia..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Aldaketa azkarra"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Liburutegiari izena aldatu"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Ezabatu liburutegia"
@@ -4658,7 +4724,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Hori badago dagoeneko"
@@ -4680,13 +4746,14 @@ msgstr ""
"egoten delako beste programa baten menpe."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Ziur zaude?"
@@ -4722,8 +4789,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr ""
@@ -4863,103 +4930,110 @@ msgstr ""
"Ezin dituzu beste liburutegi batzuk erabili CALIBRE_OVERRIDE_DATABASE_PATH "
"ingurugiro aldakorra erabiltzen ari zaren bitartean."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Ezabatzen..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Ezabaturik"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Ezin izan da ezabatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"Ezin izan dira liburu batzuk ezabatu, gehiago jakiteko egin ezazu klik "
"\"Zehaztasunak erakutsi\" botoian."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Ezabatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Ezabatu liburuak"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Ezabatu hautatutako liburuak"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr "Remove files of a specific format from selected books.."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr "Remove all formats from selected books, except..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Ezabatu hautatutako liburuetako azalak"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Remove matching books from device"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "Ezin ezabatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Aukeratu ezabatzeko formatuak"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Aukeratu formatuak ez ezabatzeko"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "Ezin liburuak ezabatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "Ez dago konektaturik inolako irakurgailurik"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Memoria nagusia"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Memoria-txartela A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Memoria-txartela B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "Ez dago ezabatzeko libururik"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "Hautatutako liburuak ez daude irakurgailuan, ezta bakar bat ere"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Ezabatzen liburuak irakurgailutik."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
@@ -4967,7 +5041,7 @@ msgstr ""
"Hautatutako liburuetako batzuk erantsitako gailuan daude. Nondik nahi "
"duzu ezabatu hautatutako fitxategiak?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -4975,7 +5049,7 @@ msgstr ""
"Aukeratutako liburuak betiko ezabatu egingo dira zure calibre "
"liburutegitik eta fitxategiak ezabatu egingo dira betiko. Ziur zaude?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -5226,11 +5300,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5312,24 +5386,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Run welcome wizard"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr "Berrabiarazi araztaile moduan (debug mode)"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "Cannot configure while there are running jobs."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "Cannot configure before calibre is restarted."
@@ -5458,35 +5532,52 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Books with the same tags"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Bilatu"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
"information."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5496,11 +5587,11 @@ msgid ""
"ebook.com/about#drm\">DRM
Words separated by spaces are ANDed"
@@ -10466,26 +10589,22 @@ msgstr ""
"etiketak, iruzkinak, eta abar erabilita.
Espazioekin bereiziriko "
"hitzak ETA juntagailuarekin elkartuta baleude legez hartuko dira"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "&Aurrera!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Egin esazu bilaketa azkarra (Sartu giltza sakatzea duzu ere bai)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Berrezarri bilaketa azkarra"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr "Kopiatu oraingo bilaketa testua (bilaketa izenaren ordez)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "B"
@@ -10508,31 +10627,31 @@ msgstr "Tamaina (Mb)"
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "Bilaketa izena hauxe: \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "Liburu honen UUID (Universally Unique Identifier) hauxe da: \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "Liburutegian"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Tamaina"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Ezabatzeko markatuta"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Egin ezazu klik birritan editatzeko
"
@@ -11020,15 +11139,15 @@ msgstr "ISBN zenbaki baliogarria"
msgid "This ISBN number is invalid"
msgstr "ISBN zenbaki balio gabea"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Argitaratu&rik:"
@@ -11095,7 +11214,7 @@ msgstr ""
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.py:51
#: /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
@@ -11103,19 +11222,19 @@ msgstr ""
msgid "Next"
msgstr "Hurrengoa"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Aurrekoa"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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 "
@@ -11126,7 +11245,7 @@ msgstr ""
"Botoi hau erabiliz gero izenburuen klasea sortzeko, izenburuaren klasearen "
"kolorea aldatuko da berdetik gorrira."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -11134,88 +11253,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Trukatu haien artean zenburua eta egilearen izena"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr "Ezabatu erabiltzen ez diren serieak (libururik ez daukaten serieak)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "Ezin izan da liburu-azala irakurri"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "Ezin izan da %s formatutik irakurri"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "Liburu-azala %s formatuan ez du balio"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Ez zaizu baimenik eman"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr "Ezin izan da %s zabaldu. Beste programa bat erabiltzen ari?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Gorde aldaketak eta editatu %s horren metadatuak"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Iruzkinak"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -12215,27 +12345,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -12359,35 +12489,68 @@ msgstr "Zabaldu calibreren &konfigurazio direktorioa"
msgid "&Install command line tools"
msgstr "&Instalatu lerro-aginduen, lerro-komandoen, lanabesa"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Irakurgailua konektaturik oraintxe bertan: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Irakurgailua konektaturik oraintxe bertan: bat ere ez"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-"Formatu horrek eta irakurgailu horrek dagoeneko badu konexio-txartelik edo "
-"bestela badago beste konexio-txartel batekin gatazkaren bat."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Helburu baliogabea"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "Helburu eremua ezin da hutsik egon"
@@ -12466,15 +12629,15 @@ msgstr "Gorde konexio-txartela"
msgid "Delete plugboard"
msgstr "Ezabatu konexio-txartela"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugin_type)s %(plugins)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "pluginak, gehigarriak"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12482,82 +12645,82 @@ msgstr ""
"\n"
"Pertsonalizatzeko: "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "Ez du balio gehegarrirako bidea (path)"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s hori ez da gehegarri baterako balio duen bidea"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "Gehigarria ezin da desgaitu"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "Hau gehigarri %s hau ezin da desgaitu"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Gehigarria ezin da pertsonalizatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "%s gehigarriak ez du pertsonalizatzerik behar"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Berrabiarazi beharko"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "Ezin da builtin gehigarria ezabatu"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" Ezin da ezabatu Hau builtin gehigarri bat da. Hori egin beharrean, saia "
@@ -13256,6 +13419,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Bilatu"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -13337,7 +13510,7 @@ msgstr "({0} guztietatik)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13406,7 +13579,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -13434,18 +13607,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -13500,40 +13673,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -14475,14 +14643,6 @@ msgstr "Aurkitu aurreko gertaera"
msgid "Print eBook"
msgstr "Inprimatu liburu elektronikoa"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Letra larriak/xeheak giltza aldatu"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Trukatu leta xehe/larri"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Herrestan eraman tamaina doitzeko"
@@ -14501,8 +14661,8 @@ msgstr "Txandakatu"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -14870,7 +15030,7 @@ msgstr "aztertua"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "bai"
@@ -14885,7 +15045,7 @@ msgstr "aztertu gabea"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "Ez"
@@ -14934,16 +15094,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Output eremua sailkatzeko.\n"
-"Eremu eskuragarriak: author_sort, id, rating, size, timestamp, title.\n"
-"Lehenetsita: '%default'\n"
-"Aplikatuko: CSV, XML output formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -14954,7 +15110,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -14966,7 +15122,7 @@ msgstr ""
"Lehenetsita: '%default'\n"
"Aplikatuko: BIBTEX output formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14978,7 +15134,7 @@ msgstr ""
"Lehenetsita: '%default'\n"
"Aplikatuko da: BIBTEX output formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -14986,7 +15142,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -14995,7 +15151,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -15007,7 +15163,7 @@ msgstr ""
"Lehenetsita: '%default'\n"
"Aplikatuko da: BIBTEX output formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -15019,7 +15175,7 @@ msgstr ""
"Lehenetsita: '%default'\n"
"Aplikatuko da: BIBTEX output formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -15031,7 +15187,7 @@ msgstr ""
"Lehenetsia: '%default'\n"
"Aplikatuko da: BIBTEX output formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -15041,7 +15197,7 @@ msgstr ""
"Lehenetsita: '%default'\n"
"Aplikatuko zaie ePub, MOBI irteera formatuei"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -15050,7 +15206,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -15061,7 +15217,7 @@ msgstr ""
"Default: '%default'\n"
"Applikatuko da ePub, MOBI helburu formatuetara"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9576,31 +9695,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10056,15 +10175,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10131,7 +10250,7 @@ msgstr ""
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.py:51
#: /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
@@ -10139,26 +10258,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10166,88 +10285,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11170,27 +11300,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11310,33 +11440,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11396,96 +11561,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12130,6 +12295,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12209,7 +12384,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12278,7 +12453,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12306,18 +12481,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12372,40 +12547,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13293,14 +13463,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13319,8 +13481,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13640,7 +13802,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13655,7 +13817,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13704,12 +13866,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13720,7 +13882,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13728,7 +13890,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13736,7 +13898,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13744,7 +13906,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13753,7 +13915,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13761,7 +13923,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13769,7 +13931,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13777,14 +13939,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13793,7 +13955,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13801,14 +13963,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9671,31 +9790,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10151,15 +10270,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10226,7 +10345,7 @@ msgstr ""
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.py:51
#: /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
@@ -10234,26 +10353,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10261,88 +10380,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11265,27 +11395,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11405,33 +11535,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11491,96 +11656,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12225,6 +12390,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12304,7 +12479,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12373,7 +12548,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12401,18 +12576,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12467,40 +12642,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13388,14 +13558,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13414,8 +13576,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13735,7 +13897,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13750,7 +13912,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13799,12 +13961,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13815,7 +13977,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13823,7 +13985,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13831,7 +13993,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13839,7 +14001,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13848,7 +14010,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13856,7 +14018,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13864,7 +14026,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13872,14 +14034,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13888,7 +14050,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13896,14 +14058,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
Words separated by spaces are ANDed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr ""
@@ -9555,31 +9674,31 @@ msgstr ""
msgid "Modified"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr ""
@@ -10035,15 +10154,15 @@ msgstr ""
msgid "This ISBN number is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr ""
@@ -10110,7 +10229,7 @@ msgstr ""
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.py:51
#: /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
@@ -10118,26 +10237,26 @@ msgstr ""
msgid "Next"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -10145,88 +10264,99 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
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
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr ""
-#: /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:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr ""
@@ -11149,27 +11279,27 @@ msgstr ""
msgid "Cover priority"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr ""
@@ -11289,33 +11419,68 @@ msgstr ""
msgid "&Install command line tools"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr ""
@@ -11375,96 +11540,96 @@ msgstr ""
msgid "Delete plugboard"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
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:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
"sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
@@ -12109,6 +12274,16 @@ msgstr ""
msgid "Apply any changes you made to this tweak"
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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr ""
@@ -12188,7 +12363,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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -12257,7 +12432,7 @@ msgstr ""
msgid "Open store in external web browswer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr ""
@@ -12285,18 +12460,18 @@ msgstr ""
msgid "Updating MobileRead book cache..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -12351,40 +12526,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr ""
-#: /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:118
#: /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:114
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
#: /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: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: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:111
msgid "All"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
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
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr ""
@@ -13272,14 +13442,6 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
@@ -13298,8 +13460,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
@@ -13619,7 +13781,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr ""
@@ -13634,7 +13796,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr ""
@@ -13683,12 +13845,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -13699,7 +13861,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -13707,7 +13869,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13715,7 +13877,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -13723,7 +13885,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -13732,7 +13894,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -13740,7 +13902,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -13748,7 +13910,7 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -13756,14 +13918,14 @@ msgid ""
"Applies to: BIBTEX output format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
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:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -13772,7 +13934,7 @@ msgid ""
"Applies to: ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -13780,14 +13942,14 @@ msgid ""
"Applies to ePub, MOBI output formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[
"
msgid "Create a catalog of the books in your calibre library"
msgstr "Créer un catalogue des livres de votre bibliothèque Calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:31
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:34
msgid "No books selected for catalog generation"
msgstr "Pas de livres sélectionnés pour la génération du catalogue"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:57
msgid "Generating %s catalog..."
msgstr "Génère le catalogue %s..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
msgid "Catalog generated."
msgstr "Catalogue généré."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:84
msgid "Export Catalog Directory"
msgstr "Répertoire d'export du catalogue"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:82
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:85
msgid "Select destination for %s.%s"
msgstr "Sélectionner la destination pour %s.%s"
@@ -4685,17 +4769,17 @@ msgid "Switch/create library..."
msgstr "Créer/Changer de bibliothèque ..."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:105
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:87
msgid "Quick switch"
msgstr "Bascule rapide"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:107
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:88
msgid "Rename library"
msgstr "Renommer la bibliothèque"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:109
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:89
msgid "Delete library"
msgstr "Effacer la bibliothèque"
@@ -4737,7 +4821,7 @@ msgstr "Attention le dossier de la bibliothèque va être renommé"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:229
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:199
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:285
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:289
msgid "Already exists"
msgstr "Existe déjà"
@@ -4759,13 +4843,14 @@ msgstr ""
"bibliothèque dans un autre programme."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:368
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:457
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:463
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:279
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Etes vous sur ?"
@@ -4806,8 +4891,8 @@ msgstr ""
#: /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
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:345
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:295
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
msgid "Success"
msgstr "Succès"
@@ -4956,104 +5041,114 @@ msgstr ""
"Vous ne pouvez pas utiliser d'autres bibliothèques lorsque vous utilisez la "
"variable d'environnement CALIBRE_OVERRIDE_DATABASE_PATH."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:32
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:31
+msgid ""
+"You are trying to delete %d books. Sending so many files to the Recycle Bin "
+"can be slow. Should calibre skip the Recycle Bin? If you click Yes "
+"the files will be permanently deleted."
+msgstr ""
+"Vous voulez supprimer %d livres. L'envoi d'un nombre important de fichiers "
+"dans la poubelle peut être lent. Calibre doit-il éviter la poubelle? "
+"Si vous cliquer sur Oui les fichiers seront définitivement supprimés."
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:42
msgid "Deleting..."
msgstr "Suppression..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:65
msgid "Deleted"
msgstr "Supprimé"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:77
msgid "Failed to delete"
msgstr "Echec de la supression"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:67
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:78
msgid ""
"Failed to delete some books, click the Show Details button for details."
msgstr ""
"Echec de la suppression de quelques livres, cliquer qur le bouton Afficher "
"les Détails pour les détails."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Del"
msgstr "Suppression"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
msgid "Remove books"
msgstr "Supprimer des livres"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
msgid "Remove selected books"
msgstr "Supprimer les livres sélectionnés"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:92
msgid "Remove files of a specific format from selected books.."
msgstr ""
"Supprimer les fichiers d'un format spécifique pour les livres sélectionnés..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:95
msgid "Remove all formats from selected books, except..."
msgstr "Supprimer tous les formats pour les livres sélectionnés, excepté..."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:98
msgid "Remove covers from selected books"
msgstr "Supprimer les couvertures des livres sélectionnés"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:101
msgid "Remove matching books from device"
msgstr "Supprimer les livres correspondant de l'appareil"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:124
msgid "Cannot delete"
msgstr "Impossible de supprimer"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:126
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:137
msgid "Choose formats to be deleted"
msgstr "Choisir les formats à supprimer"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:155
msgid "Choose formats not to be deleted"
msgstr "Choisir les formats à ne pas supprimer"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
msgid "Cannot delete books"
msgstr "Impossible d'effacer les livres"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
msgid "No device is connected"
msgstr "Aucun appareil n'est connecté"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:186
msgid "Main memory"
msgstr "Mémoire principale"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:187
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:468
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:477
msgid "Storage Card A"
msgstr "Carte mémoire A"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:177
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:188
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:470
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:479
msgid "Storage Card B"
msgstr "Carte mémoire B"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:182
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:193
msgid "No books to delete"
msgstr "Aucun livre à effacer"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:194
msgid "None of the selected books are on the device"
msgstr "Aucun des livres sélectionnés n'est sur l'appareil"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:200
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:302
msgid "Deleting books from device."
msgstr "Suppression des livres dans l'appareil"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:246
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:257
msgid ""
"Some of the selected books are on the attached device. Where do you "
"want the selected files deleted from?"
@@ -5061,7 +5156,7 @@ msgstr ""
"Certains des livres sélectionnés sont présents sur l'appareil connecté. A "
"partir d'où voulez-vous supprimer les fichiers?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:258
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:269
msgid ""
"The selected books will be permanently deleted and the files removed "
"from your calibre library. Are you sure?"
@@ -5070,7 +5165,7 @@ msgstr ""
"fichiers associés seront retirés de votre bibliothèque calibre. Êtes-vous "
"certain?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:283
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:294
msgid ""
"The selected books will be permanently deleted from your device. Are "
"you sure?"
@@ -5251,6 +5346,10 @@ msgid ""
"Click \"Show details\" to see the list of changed books. Do you want to "
"proceed?"
msgstr ""
+"Les métadonnées de certains livres dans votre librairie ont été modifiées "
+"depuis le début du téléchargement. Si vous continuer, certaines des "
+"modifications seront réécrites. Cliquer \"Afficher détails\" pour voir la "
+"liste de livres modifiés. Voulez-vous continuer?"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:155
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:219
@@ -5331,11 +5430,11 @@ msgstr ""
msgid "Applying changed metadata"
msgstr "Valide les modifications de métadonnées"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:516
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:520
msgid "Some failures"
msgstr "Des échecs"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:517
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:521
msgid ""
"Failed to apply updated metadata for some books in your library. Click "
"\"Show Details\" to see details."
@@ -5419,24 +5518,24 @@ msgstr "O"
msgid "Ctrl+P"
msgstr "Ctrl+P"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:22
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
msgid "Change calibre behavior"
msgstr "Modifier le comportement de calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:25
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:208
msgid "Run welcome wizard"
msgstr "Démarrer l'assistant de bienvenue"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:28
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:29
msgid "Restart in debug mode"
msgstr "Redémarrer en mode de débogage"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:44
msgid "Cannot configure while there are running jobs."
msgstr "Impossible de configurer pendant que des travaux sont en cours."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:49
msgid "Cannot configure before calibre is restarted."
msgstr "Configuration impossible avant que Calibre n'ait été redémarré."
@@ -5567,22 +5666,39 @@ msgstr "Alt+T"
msgid "Books with the same tags"
msgstr "Livres avec les mêmes étiquettes"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:19
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:20
msgid "Get books"
msgstr "Obtenir des livres"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:28
-#: /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: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
-msgid "Search"
-msgstr "Trouver"
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:29
+msgid "Search for ebooks"
+msgstr "Rechercher des ebooks"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:46
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:30
+msgid "Search for this author"
+msgstr "Rechercher pour cet auteur"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:31
+msgid "Search for this title"
+msgstr "Rechercher pour ce titre"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:32
+msgid "Search for this book"
+msgstr "Rechercher pour ce livre"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:110
+msgid "Stores"
+msgstr "Stockages"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:104
+msgid "Cannot search"
+msgstr "Impossible de rechercher"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:116
msgid ""
"Calibre helps you find the ebooks you want by searching the websites of "
"various commercial and public domain book sources for you."
@@ -5591,7 +5707,7 @@ msgstr ""
"vous dans les sites web de sources diverses commerciales et du domaine "
"public."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:120
msgid ""
"Using the integrated search you can easily find which store has the book you "
"are looking for, at the best price. You also get DRM status and other useful "
@@ -5601,7 +5717,7 @@ msgstr ""
"magasin possède le livre que vous chercher, au meilleur prix. Vous obtenez "
"aussi le statut DRM et d'autres informations utiles."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:124
msgid ""
"All transactions (paid or otherwise) are handled between you and the book "
"seller. Calibre is not part of this process and any issues related to a "
@@ -5610,12 +5726,19 @@ msgid ""
"especially if the book you are buying has DRM."
msgstr ""
+"Tous les transactions (payées ou autres) sont traitées entre vous et le "
+"vendeur du livre. Calibre n'intervient pas dans cette partie du processus et "
+"toute question liée à un achat doit être redirigée vers le site auquel vous "
+"avez effectué votre achat. Veuillez vous assurer que tous les livres que "
+"vous obtenez fonctionneront avec vote lecteur d'ebook, particulièrement si "
+"le livre a des DRM."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:134
msgid "Show this message again"
msgstr "Afficher ce message à nouveau"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:65
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/store.py:135
msgid "About Get Books"
msgstr "A propos d' Obtenir des Livres"
@@ -5740,7 +5863,7 @@ msgid "The specified directory could not be processed."
msgstr "Le chemin spécifié ne peut pas être traité."
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:843
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:845
msgid "No books"
msgstr "Aucun livre"
@@ -5922,8 +6045,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar_ui.py:110
#: /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:115
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:120
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:191
msgid "..."
msgstr "..."
@@ -5947,6 +6070,10 @@ msgstr ""
"Livres &Multiples dans un dossier, suppose que chaque livre électronique est "
"un livre différent"
+#: /home/kovid/work/calibre/src/calibre/gui2/bars.py:190
+msgid "Donate"
+msgstr "Faire un don"
+
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:108
msgid "Click to open"
msgstr "Cliquer pour ouvrir"
@@ -5957,10 +6084,10 @@ msgstr "Ids"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:133
msgid "Book %s of %s"
-msgstr ""
+msgstr "Livre %s sur%s"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:144
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:978
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:981
msgid "Collections"
msgstr "Collections"
@@ -6060,7 +6187,7 @@ msgstr "sortie"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59
#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:91
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:84
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xpath_wizard_ui.py:72
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77
@@ -6383,10 +6510,12 @@ msgid "Remove formatting"
msgstr "Annuler le formattage"
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:134
msgid "Copy"
msgstr "Copier"
#: /home/kovid/work/calibre/src/calibre/gui2/comments_editor.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:136
msgid "Paste"
msgstr "Coller"
@@ -7242,7 +7371,7 @@ msgstr "&Format :"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output_ui.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pmlz_output_ui.py:47
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:34
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
msgid "&Inline TOC"
msgstr "TDM &intégrée"
@@ -7323,7 +7452,7 @@ msgid "Occurrences:"
msgstr "Occurrences:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:94
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:78
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:64
msgid "0"
msgstr "0"
@@ -7421,7 +7550,7 @@ msgstr "Options spécifiques au format d'entrée."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/message_box_ui.py:52
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/progress_ui.py:53
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/cache_progress_dialog_ui.py:50
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:73
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:61
msgid "Dialog"
msgstr "Boîte de dialogue"
@@ -7615,46 +7744,50 @@ msgstr ""
msgid "TXT Output"
msgstr "Sortie TXT"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
msgid "General"
msgstr "Général"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:86
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
msgid "Output &Encoding:"
msgstr "&Encodage de sortie:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
msgid "&Line ending style:"
msgstr "Style de fin de &ligne :"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:88
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
msgid "&Formatting:"
msgstr "&Formatage:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:92
msgid "Plain"
msgstr "Plein"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
msgid "&Maximum line length:"
msgstr "Longueur &maximale de la ligne :"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
msgid "Force maximum line length"
msgstr "Forcer la longueur de ligne maximale"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:96
msgid "Markdown, Textile"
msgstr "Markdown, Textile"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:97
msgid "Do not remove links ( tags) before processing"
msgstr "Ne pas supprimer les liens (balises ) avant l'exécution"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:98
msgid "Do not remove image references before processing"
msgstr "Ne pas supprimer les références image avant l'exécution"
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:99
+msgid "Keep text color, when possible"
+msgstr "Conserver la couleur du texte, lorsque c'est possible"
+
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txtz_output.py:12
msgid "TXTZ Output"
msgstr "Sortie TXTZ"
@@ -7768,10 +7901,10 @@ msgstr "Le navigateur de coverture ne peut ête chargé"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:183
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:302
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:566
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:607
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:630
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:681
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:608
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:682
#: /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/library/delegates.py:120
@@ -7779,27 +7912,27 @@ msgstr "Le navigateur de coverture ne peut ête chargé"
#: /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:1110
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1117
msgid "Undefined"
msgstr "Indéfini(e)"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
msgid "star(s)"
msgstr "étoile(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:639
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:640
msgid "Unrated"
msgstr "Non noté"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:668
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Set '%s' to today"
msgstr "Définir '%s' à aujourd'hui"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:172
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:671
msgid "Clear '%s'"
msgstr "Effacer '%s'"
@@ -7815,23 +7948,23 @@ msgstr ""
"L'énumération \"{0}\" contient une valeur non valide qui va être fixée à sa "
"valeur par défaut"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:521
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:522
msgid "Apply changes"
msgstr "Appliquer les modifications"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:714
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:715
msgid "Remove series"
msgstr "Effacer les series"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:717
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:718
msgid "Automatically number books"
msgstr "Nummérotation automatique des livres"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:721
msgid "Force numbers to start with "
msgstr "Force les nombres à commencer par "
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:791
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:792
msgid ""
"The enumeration \"{0}\" contains invalid values that will not appear in the "
"list"
@@ -7839,15 +7972,15 @@ msgstr ""
"L'énumération \"{0}\" contient des valeurs non valides qui ne vont pas "
"apparaître dans la liste"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:835
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:836
msgid "Remove all tags"
msgstr "Supprimer toutes les étiquettes"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:855
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:856
msgid "tags to add"
msgstr "étiquettes à ajouter"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:863
msgid "tags to remove"
msgstr "étiquettes à supprimer"
@@ -7931,7 +8064,7 @@ msgstr "Ejecter l'appareil"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:611
#: /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/gui2/preferences/plugins.py:313
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54
msgid "Error"
msgstr "Erreur"
@@ -7941,7 +8074,7 @@ msgid "Error communicating with device"
msgstr "Erreur pendant la communication avec le lecteur électronique"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1168
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1170
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:221
msgid "No suitable formats"
msgstr "Pas de format convenable"
@@ -7971,61 +8104,61 @@ msgstr "Appareil : "
msgid " detected."
msgstr " detecté."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:844
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:846
msgid "selected to send"
msgstr "sélectionné pour l'envoi"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "%i of %i Books"
msgstr "Livre %i de %i"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:868
msgid "0 of %i Books"
msgstr "Livre 0 de %i"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:869
msgid "Choose format to send to device"
msgstr "Choisir le format à envoyer au lecteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
msgid "No device"
msgstr "Aucun appareil"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:876
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
msgid "Cannot send: No device is connected"
msgstr "Impossible d'envoyer : Aucun appareil n'est connecté"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:883
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:885
msgid "No card"
msgstr "Aucune carte"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:880
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:884
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:886
msgid "Cannot send: Device has no storage card"
msgstr "Impossible d'envoyer : L'appareil n'a pas de carte mémoire"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:945
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1028
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1162
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:947
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1030
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1164
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
"Convertir automatiquement les livres suivants avant de les télécharger dans "
"l'appareil ?"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:974
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:976
msgid "Sending catalogs to device."
msgstr "Envoie les catalogues vers l'appareil."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1075
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1077
msgid "Sending news to device."
msgstr "Envoi les News vers l'appareil."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1129
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1131
msgid "Sending books to device."
msgstr "Envoie les livres dans l'appareil."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1169
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1171
msgid ""
"Could not upload the following books to the device, as no suitable formats "
"were found. Convert the book(s) to a format supported by your device first."
@@ -8034,11 +8167,11 @@ msgstr ""
"convenable n'a été trouvé. Convertissez avant le(s) livre(s) vers un format "
"supporté par votre appareil."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1241
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1243
msgid "No space on device"
msgstr "Le lecteur électronique n'a plus d'espace mémoire disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1242
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1244
msgid ""
"
Words separated by spaces are ANDed"
@@ -10803,27 +10958,23 @@ msgstr ""
"commentaires, etc...
Les mots séparés par des espaces sont traités "
"avec des AND"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:191
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:195
msgid "&Go!"
msgstr "&Go!"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:197
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:201
msgid "Do Quick Search (you can also press the Enter key)"
msgstr "Lancer une recherche rapide (vous pouvez aussi appuyer sur Enter)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:203
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:207
msgid "Reset Quick Search"
msgstr "Réinitialisation de la recherche rapide"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:219
+#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:223
msgid "Copy current search text (instead of search name)"
msgstr ""
"Copier le texte de recherche courant (au lieu du nom de la recherche)"
-#: /home/kovid/work/calibre/src/calibre/gui2/layout.py:259
-msgid "Donate"
-msgstr "Faire un don"
-
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:361
msgid "Y"
msgstr "Y"
@@ -10846,31 +10997,31 @@ msgstr "Taille (Mo)"
msgid "Modified"
msgstr "Modifié"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:717
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1274
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:720
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1277
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:797
msgid "The lookup/search name is \"{0}\""
msgstr "Le nom recherché/consulté est \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:723
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1276
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:726
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1279
msgid "This book's UUID is \"{0}\""
msgstr "L'UUID de ce livre est \"{0}\""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:973
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:976
msgid "In Library"
msgstr "Dans la bibliothèque"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:977
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:980
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:311
msgid "Size"
msgstr "Taille"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1254
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
msgid "Marked for deletion"
msgstr "Marqué pour suppression"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1257
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1260
msgid "Double click to edit me
"
msgstr "Double clic pour m' éditer
"
@@ -11252,6 +11403,7 @@ msgstr "Indiquer la couverture pour le livre à partir du format sélectionné"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:517
msgid "Set metadata for the book from the selected format"
msgstr ""
+"Indiquer les métadonnées pour ce livre à partir du format sélectionné"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:524
msgid "Add a format to this book"
@@ -11374,15 +11526,15 @@ msgstr "Le numéro ISBN est correct"
msgid "This ISBN number is invalid"
msgstr "Le numéro ISBN est incorrect"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1043
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1050
msgid "&Publisher:"
msgstr "&Éditeur:"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1120
msgid "Clear date"
msgstr "Effacer la date"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1145
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1152
msgid "Publishe&d:"
msgstr "Pu&blié :"
@@ -11453,7 +11605,7 @@ msgstr "%d sur %d téléchargé"
msgid "Downloaded metadata fields"
msgstr "Champs de métadonnées téléchargés"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:51
#: /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
@@ -11461,19 +11613,19 @@ msgstr "Champs de métadonnées téléchargés"
msgid "Next"
msgstr "Suivant"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55
#: /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 "Précédent"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:242
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:265
msgid "Edit Metadata"
msgstr "Éditer les métadonnées"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101
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 "
@@ -11484,7 +11636,7 @@ msgstr ""
"L'utilisation de ce bouton pour créer la clé de tri de titre changera la "
"couleur de ce champ de rouge à vert."
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112
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 "
@@ -11492,91 +11644,106 @@ msgid ""
"Click and hold on the button to see it."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118
msgid "Set author sort from author"
msgstr "Créer la clé de tri d'auteur à partir de l'auteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119
msgid "Set author from author sort"
msgstr "Créer l'auteur à partir de la clé de tri d'auteur"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:129
msgid "Swap the author and title"
msgstr "Inverse l'auteur et le titre"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:135
+msgid ""
+"Manage authors. Use to rename authors and correct individual author's sort "
+"values"
+msgstr ""
+"Gérer les auteurs. Utiliser pour renommer les auteurs et corriger les "
+"valeurs de tri individuelles par auteur"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143
msgid "Remove unused series (Series that have no books)"
msgstr ""
"Supprimer les séries inutilisées (Les séries qui ne possèdent aucun livres)"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:173
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178
+msgid ""
+"Paste the contents of the clipboard into the identifiers box prefixed with "
+"isbn:"
+msgstr ""
+"Coller le contenu du presse-papier dans la boîte de saisie des identifiants "
+"préfixé par l'isbn:"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191
msgid "&Download metadata"
msgstr "&Télécharger les métadonnées"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202
+msgid "Configure download metadata"
+msgstr "Configurer le téléchargement des métadonnées"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206
msgid "Change how calibre downloads metadata"
msgstr "Modifier la manière dont Calibre télécharge les métadonnées"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:283
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:290
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:306
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:313
msgid "Could not read cover"
msgstr "Impossible de lire la couverture"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:284
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:307
msgid "Could not read cover from %s format"
msgstr "Impossible de lire la couverture à partir du format %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:291
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:314
msgid "The cover in the %s format is invalid"
msgstr "La couverture au format %s est incompatible"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:372
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397
msgid "Permission denied"
msgstr "Permission refusée"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:373
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:398
msgid "Could not open %s. Is it being used by another program?"
msgstr ""
"Impossible d'ouvrir %s. Est-il en cours d'utilisation par un autre programme "
"?"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:425
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:430
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:450
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:455
msgid "Save changes and edit the metadata of %s"
msgstr "Sauvegarder les changements et éditer les métadonnées de %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:518
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:545
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:747
msgid "Change cover"
msgstr "Changer la couverture"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:567
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:602
msgid "Co&mments"
msgstr "Co&mmentaires"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:606
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:749
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788
msgid "&Metadata"
msgstr "&Métadonnées"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:647
msgid "&Cover and formats"
msgstr "&Couverture et formats"
-#: /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 "Configurer le téléchargement des métadonnées"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:677
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:716
msgid "C&ustom metadata"
msgstr "Métadonnées personnalisées"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:689
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:728
msgid "&Comments"
msgstr "&Commentaires"
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:755
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:794
msgid "Basic metadata"
msgstr "Métadonnées basiques"
@@ -12605,27 +12772,27 @@ msgstr "Source"
msgid "Cover priority"
msgstr "Priorité de la couverture"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
msgid "This source is configured and ready to go"
msgstr "La source est configurée et prête à fonctionner"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:76
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:77
msgid "This source needs configuration"
msgstr "Cettte source nécessite une configuration"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:148
msgid "Published date"
msgstr "Date de publication"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:240
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:241
msgid "Configure %s
%s"
msgstr "Configurer %s
%s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
msgid "No source selected"
msgstr "Pas de source sélectionnée"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:294
msgid "No source selected, cannot configure."
msgstr "Pas de source sélectionnée, impossible de configurer."
@@ -12757,35 +12924,68 @@ msgstr "Ouvrir le répertoire de &configuration de Calibre"
msgid "&Install command line tools"
msgstr "&Installer les outils en ligne de commande"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:37
msgid "Open Editor"
msgstr "Ouvrir l'éditeur"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:68
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:72
msgid "Device currently connected: "
msgstr "Appareil actuellement connecté : "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:75
msgid "Device currently connected: None"
msgstr "Appareil actuellement connecté : Aucun"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:238
-msgid ""
-"That format and device already has a plugboard or conflicts with another "
-"plugboard."
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:207
+msgid "That format and device already has a plugboard."
msgstr ""
-"Ce format et cet appareil ont déjà un tableau de connexions ou est en "
-"conflit avec un autre tableau de connexions"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:247
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:219
+msgid "Possibly override plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:220
+msgid ""
+"A more general plugboard already exists for that format and device. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:254
+msgid "Add possibly overridden plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:233
+msgid ""
+"More specific device plugboards exist for that format. Are you sure you want "
+"to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:244
+msgid "Really add plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:245
+msgid ""
+"A different plugboard matches that format and device combination. Are you "
+"sure you want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:255
+msgid ""
+"More specific format and device plugboards already exist. Are you sure you "
+"want to add the new plugboard?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:266
msgid "The {0} device does not support the {1} format."
msgstr "L'appareil {0} ne supporte par le format {1}."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:280
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:299
msgid "Invalid destination"
msgstr "Destination incorrecte"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:300
msgid "The destination field cannot be blank"
msgstr "Le champ de destination ne peut être vide"
@@ -12864,15 +13064,15 @@ msgstr "Sauver le tableau de connexions"
msgid "Delete plugboard"
msgstr "Supprimer le tableau de connexions"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:182
msgid "%(plugin_type)s %(plugins)s"
msgstr "%(plugins)s %(plugin_type)s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:183
msgid "plugins"
msgstr "plugins"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:192
msgid ""
"\n"
"Customization: "
@@ -12880,24 +13080,24 @@ msgstr ""
"\n"
"Personnalisation : "
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:217
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:221
msgid "Search for plugin"
msgstr "Chercher le plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:226
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "No matches"
msgstr "Pas de résultats"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:231
msgid "Could not find any matching plugins"
msgstr "Impossible de trouver un plugin correspondant"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:272
msgid "Add plugin"
msgstr "Ajouter plugin"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:280
msgid ""
"Installing plugins is a security risk. Plugins can contain a "
"virus/malware. Only install it if you got it from a trusted source. Are you "
@@ -12907,7 +13107,7 @@ msgstr ""
"contenir un virus/malware. Installer les seulement s'ils proviennent d'une "
"source de confiance. Êtes-vous sûr de vouloir continuer?"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:296
msgid ""
"Plugin {0} successfully installed under {1} plugins. You may "
"have to restart calibre for the plugin to take effect."
@@ -12915,53 +13115,53 @@ msgstr ""
"Le plugin {0} a été installé avec succès sous plugins {1} . "
"Vous devrez surement redémarrer calibre pour que le plugin fonctionne"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:300
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:304
msgid "No valid plugin path"
msgstr "N'est pas un chemin correct pour les plugins"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:305
msgid "%s is not a valid plugin path"
msgstr "%s n'est pas un répertoire correct pour les plugins"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:310
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:314
msgid "Select an actual plugin under %s to customize"
msgstr "Sélectionner un plugin actuel sous %s pour le personnaliser"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:320
msgid "Plugin cannot be disabled"
msgstr "Le plugin ne peut pas être désactivé"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:321
msgid "The plugin: %s cannot be disabled"
msgstr "Le plugin %s ne peut pas être désactivé"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:331
msgid "Plugin not customizable"
msgstr "Le plugin ne peut pas être personnalisé"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:328
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:332
msgid "Plugin: %s does not need customization"
msgstr "Le plugin %s ne peut pas être personnalisé"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:338
msgid "Must restart"
msgstr "Redémarrage nécessaire"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:339
msgid ""
"You must restart calibre before you can configure the %s plugin"
msgstr ""
"Vous devez redémarrer calibre avant de pouvoir configurer le plugin %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:344
msgid "Plugin {0} successfully removed"
msgstr "Plugin {0} supprimé avec succès"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:348
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352
msgid "Cannot remove builtin plugin"
msgstr "Impossible de supprimer les plugins natifs"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:349
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:353
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
msgstr ""
" ne peut pas être retiré. C'est un plugin natif. Essayer plutôt de le "
@@ -13744,6 +13944,16 @@ msgstr "Restaurer la valeur par &défaut"
msgid "Apply any changes you made to this tweak"
msgstr "Appliquer les changements que vous avez effectués à ce réglage"
+#: /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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /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
+msgid "Search"
+msgstr "Trouver"
+
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339
msgid "Delete current search"
msgstr "Supprimer la recherche actuelle"
@@ -13832,7 +14042,7 @@ msgstr "({0} de tout)"
#: /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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:125
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:351
msgid "None"
@@ -13901,7 +14111,7 @@ msgstr "Étiquettes ajoutées:"
msgid "Open store in external web browswer"
msgstr "Ouvrir le stockage dans un navigateur web externe"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/store/ebooks_com_plugin.py:96
msgid "Not Available"
msgstr "Non Disponible"
@@ -13929,18 +14139,18 @@ msgstr "%s sur %s livres traités."
msgid "Updating MobileRead book cache..."
msgstr "Mise à jour du cache livre MobileRead..."
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:69
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:74
msgid "&Query:"
msgstr "&Requête:"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread/store_dialog_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/store/mobileread_store_dialog_ui.py:63
msgid "Books:"
msgstr "Livres:"
-#: /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:79
#: /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:123
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:128
#: /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"
@@ -13995,40 +14205,35 @@ msgid ""
"likelihood that this book is actually DRM restricted."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:213
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:223
msgid "Couldn't find any books matching your query."
msgstr "Impossible de trouver des livres correspondant à votre requête."
-#: /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:118
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:107
msgid "Get Books"
msgstr "Obtenir Des Livres"
-#: /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:119
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:108
msgid "Query:"
msgstr "Requête:"
-#: /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 "Stockages"
-
-#: /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:111
msgid "All"
msgstr "Tout"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:119
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:124
#: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:112
msgid "Invert"
msgstr "Inverser"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:126
msgid "Open a selected book in the system's web browser"
msgstr "Ouvrir un livre sélectionné dans le navigateur web du système"
-#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:127
msgid "Open in &external browser"
msgstr "Ouvrir dans un navigateur &externe"
@@ -14980,14 +15185,6 @@ msgstr "Rechercher l'occurence précédente"
msgid "Print eBook"
msgstr "Imprimer un ebook"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
-msgid "Change Case"
-msgstr "Modifier la casse"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
-msgid "Swap Case"
-msgstr "Basculer la casse"
-
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr "Faire glisser pour redimensionner"
@@ -15006,11 +15203,9 @@ msgstr "Basculer"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:438
msgid ""
-"Choose you e-book device. If your device is not in the list, choose a \"%s\" "
-"device."
+"Choose your e-book device. If your device is not in the list, choose a "
+"\"%s\" device."
msgstr ""
-"Choisissez votre lecteur d'e-books. Si votre appareil n'est pas dans la "
-"liste, choisissez un appareil \"%s\"."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:499
msgid "Moving library..."
@@ -15382,7 +15577,7 @@ msgstr "Vérifié"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
#: /home/kovid/work/calibre/src/calibre/library/caches.py:576
#: /home/kovid/work/calibre/src/calibre/library/caches.py:586
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "yes"
msgstr "Oui"
@@ -15397,7 +15592,7 @@ msgstr "Non vérifié"
#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
#: /home/kovid/work/calibre/src/calibre/library/caches.py:573
#: /home/kovid/work/calibre/src/calibre/library/caches.py:583
-#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:213
+#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:214
msgid "no"
msgstr "Non"
@@ -15453,16 +15648,12 @@ msgstr ""
#: /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"
+"Available fields: author_sort, id, rating, size, timestamp, title_sort\n"
"Default: '%default'\n"
"Applies to: CSV, XML output formats"
msgstr ""
-"Champ de tri pour la sortie.\n"
-"Champs disponible : author_sort, id, rating, size, timestamp, title.\n"
-"Par défaut : '%default'\n"
-"S'applique au formats : CSV, XML"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:235
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:242
msgid ""
"The fields to output when cataloging books in the database. Should be a "
"comma-separated list of fields.\n"
@@ -15480,7 +15671,7 @@ msgstr ""
"Par défaut : '%%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:248
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:255
msgid ""
"Output field to sort on.\n"
"Available fields: author_sort, id, rating, size, timestamp, title.\n"
@@ -15492,7 +15683,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:257
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:264
msgid ""
"Create a citation for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15504,7 +15695,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:266
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:273
msgid ""
"Create a file entry if formats is selected for BibTeX entries.\n"
"Boolean value: True, False\n"
@@ -15516,7 +15707,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:275
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:282
msgid ""
"The template for citation creation from database fields.\n"
"Should be a template with {} enclosed fields.\n"
@@ -15531,7 +15722,7 @@ msgstr ""
"Par défaut : '%%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:285
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:292
msgid ""
"BibTeX file encoding output.\n"
"Available types: utf8, cp1252, ascii.\n"
@@ -15543,7 +15734,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:294
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:301
msgid ""
"BibTeX file encoding flag.\n"
"Available types: strict, replace, ignore, backslashreplace.\n"
@@ -15555,7 +15746,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:303
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:310
msgid ""
"Entry type for BibTeX catalog.\n"
"Available types: book, misc, mixed.\n"
@@ -15567,7 +15758,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique au format : BIBTEX"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:609
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
msgid ""
"Title of generated catalog used as title in metadata.\n"
"Default: '%default'\n"
@@ -15577,7 +15768,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique aux formats : ePub, MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:616
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:623
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 "
@@ -15591,7 +15782,7 @@ msgstr ""
"Par défaut: '%default'\n"
"Appliquer à: formats de sortie ePub, MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:626
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
msgid ""
"field:pattern specifying custom field/contents indicating book should be "
"excluded.\n"
@@ -15603,7 +15794,7 @@ msgstr ""
"Par défaut : '%default'\n"
"S'applique aux formats : ePub, MOBI"
-#: /home/kovid/work/calibre/src/calibre/library/catalog.py:633
+#: /home/kovid/work/calibre/src/calibre/library/catalog.py:640
msgid ""
"Regex describing tags to exclude as genres.\n"
"Default: '%default' excludes bracketed tags, e.g. '[